当前位置: 代码迷 >> Java相关 >> 我的困惑
  详细解决方案

我的困惑

热度:313   发布时间:2006-11-23 20:06:55.0
我的困惑
大家好,我 编了一个程序就是下面的那个虽然通过了编译,但有一点我还是不明白,为什么,我的程序在 输入一个月份时,不能按照我预先设置的语句输出,请各位帮我一下。谢谢大家!我的 邮箱是wanglkuy@163.com欢迎大家和我交流,其实是希望大家多多帮我,我 时 个 菜鸟





import java.io.*;
public class month2 {
public static void main(String arguments[]) throws IOException
{
int i;
String str;
BufferedReader buf;
buf=new BufferedReader(new InputStreamReader(System.in));
System.out.print("Input month number:");
str=buf.readLine();
i=Integer.parseInt(str);
int j;
int A[]={"Janeury","February","March","April" ,"May","Jaue","July","August","September","October","November","December"};
for(j=0;j<A.length;i++){
if(i<=12 )
System.out.print( i + "月的英文名称是"+" int A[j]");
else
System.out.print("重新输入月份");
}
}
}
搜索更多相关的解决方案: 困惑  

----------------解决方案--------------------------------------------------------
int A[]={"Janeury","February","March","April" ,"May","Jaue","July","August","September","October","November","December"};
这也能编译通过,你的编译器。。。。还是扔了吧。
字符串怎么能定义在int型的数组里呢,呵呵

另外
System.out.print( i + "月的英文名称是"+" int A[j]");这一句也有问题阿,第一,不该把int A[j]用引号扩起来,这样编译器就把int A[j]当成一个字符串而不是一个数组元素处理了,当然就不会输出了。第二,直接用A[j]就可以,不需要加int
----------------解决方案--------------------------------------------------------
for(j=0;j<A.length;i++)

还有。。。。你这里怎么用i++
----------------解决方案--------------------------------------------------------
for(j=0;j<A.length;i++){
if(i<=12 )
System.out.print( i + "月的英文名称是"+" int A[j]");
else
System.out.print("重新输入月份");
}

这一块。。。。完全不符合逻辑。。。。我建议楼主还是重新写一个吧,呵呵,加油~
----------------解决方案--------------------------------------------------------
谢谢阿克 我 还是不能 正确编译阿
----------------解决方案--------------------------------------------------------

/*
* month3.java
*
* Created on 2006年11月23日, 下午9:55
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/

/**
*
* @author lbf
*/
import java.io.*;
public class month2 {
public static void main(String arguments[]) throws IOException {
int i;
String str;
BufferedReader buf;
buf=new BufferedReader(new InputStreamReader(System.in));
System.out.print("Input month number:");
str=buf.readLine();
i=Integer.parseInt(str);
int j;
String A[]={"Janeury","February","March","April" ,"May","Jaue","July","August","September","October","November","December"};
if(i<=12 )
System.out.print( i + "月的英文名称是"+A[i-1]);
else
System.out.print("重新输入月份");

}
}

改了,自己看


----------------解决方案--------------------------------------------------------

异常处理过于简单!希望楼主再改进!


----------------解决方案--------------------------------------------------------
我也改了一下下,呵呵
import java.io.*;
public class month2 {
public static void main(String arguments[]) throws IOException
{
int i;
String str;
BufferedReader buf;
buf=new BufferedReader(new InputStreamReader(System.in));

System.out.print("Input month number:");
str=buf.readLine();
i=Integer.parseInt(str);

String A[]={"Janeury","February","March","April" ,"May","Jaue","July","August","September","October","November","December"};

if(i>0&&i<=12 )
System.out.println( i + "月的英文名称是"+A[i-1]);
else
System.out.print("重新输入月份");

}
}

----------------解决方案--------------------------------------------------------
不错不错,改得比我好

多了一个判断输入为负的情况


----------------解决方案--------------------------------------------------------

顶楼上的各位~~
----------------解决方案--------------------------------------------------------
  相关解决方案