java 编程的问题 菜鸟

作者&投稿:汗闵 (若有异议请与网页底部的电邮联系)
关于JAVA编程的问题。(新手初学,高手勿喷)~

第一题,代码有点问题,arg[i]应该放在for循环中的,后面对arg[i]参数使用Integer.parseInt(String str)方法转换成int类型,Integer类是int的包装类,属于java.lang包,只要是java程序,都可以直接使用这个包,不需要导包。该过之后,我运行了一次,显示是成功的。

public class Test1 { public static void main(String[] args) { int average,i; int sum=0; System.out.println("输入7天的温度:"); for(i=0;i<args.length;i++) { sum=sum+Integer.parseInt(args[i]); System.out.println("周"+(i+1)+"的温度为"+args[i]); } average=sum/7; System.out.println("平均温度为:"+ average);
}}
运行结果:
D:\>javac Test1.java
D:\>java Test1 85 69 12 32 20 12 45输入7天的温度:周1的温度为85周2的温度为69周3的温度为12周4的温度为32周5的温度为20周6的温度为12周7的温度为45平均温度为:39
第二题代码也有问题,反正编译之前就提示代码是错的。我也改了一下。n在使用之前必须先初始化,否则编译时编译器会提示出错。还有for循环中for(a;a>0;a--)中的第一句必须是赋值语句,即必须是a=xxx。虽然a是char类型也可以用在for循环中,但是一般建议使用int类型的数据更好。因为char类型的数据也可以等价于int类型的数据的用法,但是因为它们是通过ASCII码来转换的,所以char类型的数据最终解释成int类型时并不一定是你想要的数据。
这里也是使用Integer.parseInt(String str)方法将输入的字符转换成int类型。System.in是程序的输入流,是从控制台上获取数据,传到程序中;另外System.out是程序的输出流,是从程序中获取数据,传到控制台上。System.out.println()方法你用过了,应该能理解的,就是输出输出流里面的数据。

public static void main(String[] args) { int sum=0; System.out.println("计算1+2+..+n的值,请输入n="); char n=' '; try { n = (char)System.in.read(); } catch (IOException e) { e.printStackTrace(); } int a=Integer.parseInt(n+""); for(;a>0;a--) sum+=a; System.out.println("从1加到"+n+"的和值为"+sum); }
运行结果:计算1+2+..+n的值,请输入n=100从1加到1的和值为1

虽然改过之后是可以运行的,不过因为char接受的是单个字符,所以只有1-9的输入是有效的,所以我用另一种方式来获取控制台数据,可以更好的完成功能。使用前导入import java.util.Scanner;使用Scanner类的原因是:
InputStream输入流(即System.in)以字节为单位来获取数据,而且需要复杂的判断并创建字节数组作为缓冲,最主要的是字节转换为字符时容易出现中文乱码的情况,所以对于字符数据的读取,应该使用扫描器进行封装,然后获取字符串类型的数据。


public static void main(String[] args) { int sum=0; System.out.println("计算1+2+..+n的值,请输入n="); Scanner scan=new Scanner(System.in); String input=scan.nextLine(); int a=Integer.parseInt(input); for(;a>0;a--) sum+=a; System.out.println("从1加到"+input+"的和值为"+sum); }
运行结果:计算1+2+..+n的值,请输入n=100从1加到100的和值为5050

空指针异常,编译的时候是不报错的。但是运行的时候,如果对一个null对象调用方法或者变量,就会出现空指针异常,例如:String a=null;a.replace();就会报空指针异常,看看你报错的这一行,肯定有类似的情况。

1。这里是"Java相关“的类别,所以一般来这里的人都是多少懂点的,而且鉴于你问的问题很初级,所以还是不要说什么”不懂勿进“吧。
2。异常说找不到helloworld这个类
3。没把代码贴出来,我们只能猜这是怎么回事。

一般情况下是classpath环境变量没有设置好..

假设你的jdk路径为D:\jdk classpath 设置为
.;D:\jdk\lib\dt.jar;D:\jdk\lib\tools.jar;

把代码贴出来哇 看这个应该是你main方法写错了
你对下下面这个
public class helloworld {
public static void main(String args[]) {
System.out.println("hello world");
}
}

环境变量问题
重新设置一下

会不会是你的文件名和类名不一样?


佳木斯市19160701520: java编程菜鸟的一个问题 -
豆卢裴九味: 空指针异常,编译的时候是不报错的.但是运行的时候,如果对一个null对象调用方法或者变量,就会出现空指针异常,例如:String a=null;a.replace();就会报空指针异常,看看你报错的这一行,肯...

佳木斯市19160701520: Java编程初级菜鸟提问 -
豆卢裴九味: public class test { public static void main(String[] args)这个程序应该保存为test.java 非Test.java或是其他的main必须在主类中!...

佳木斯市19160701520: java菜鸟的一些疑问 -
豆卢裴九味: 首先你应该了解,Java是纯面向对象语言,而C是面向过程语言.Java有类,有对象.类有属性、动作(方法),对象也有属性、动作.比如定义人类pulbic class Person{},人类有耳朵,有鼻子,有眼睛,会吃饭,会排泄等等这些都是人类的属...

佳木斯市19160701520: 菜鸟刚学java遇到的问题? -
豆卢裴九味: 3%4=1 商1余11/5=0 1和5都是int 不会得到小数,不是1.0/5.0 0*2=0 这3个运算符的优先级是一样的.

佳木斯市19160701520: java的菜鸟级问题……求指教……
豆卢裴九味: 这个简单啊,单击按钮显示子窗体时,就把主窗体设为setvisible false 关闭子窗体把主窗体setvisible 设为 true 代码如下: /*主控程序,程序从这儿开始*/ import java.io.*; import java.awt.*; import java.awt.event.*; public class Main implements ...

佳木斯市19160701520: 关于JAVA的菜鸟级问题! -
豆卢裴九味: 首先下个jdk的最新版,然后设置环境变量,环境变量实际上只需要设置Path一项就可以了.

佳木斯市19160701520: java小问题,菜鸟求教!
豆卢裴九味: 你 先这么想 读程序先从main方法 开始 就是 按着顺序读 for是 循环 如果 符合条件就循环 不符合 就 跳出继续向下执行 当然了 他的方法体 是 {} 里面的 内容 像 这道题 就是 当 循环执行到 不 符合 条件的 时候 就 不执行循环了 往下 执行你只要 弄明白了 程序执行的顺序 相信 记过 就 很简单了 就是 简单的 加减运算我 也 只是 一个学生 互相提高 多多交流 希望能帮到你

佳木斯市19160701520: (我是菜鸟)关于java的一个问题
豆卢裴九味: 1、建立java_home键,值为JDK安装目录 2、在path中添加.\;%java_home%\bin\ 为java的运行命令 3、添加classpath键,值为.\;%JAVA_HOME%\lib\ 为java运行时的类不清楚加我QQ:20778414

佳木斯市19160701520: java菜鸟问题 -
豆卢裴九味: class MyWindowListener implements WindowListener改public class MyWindowListener implements WindowListener 试试

佳木斯市19160701520: 关于java的菜鸟级问题,求高手解答,急!
豆卢裴九味: 1.java环境没配置好2.你用javac Example1.java 试试

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网