为什么没有输出啊,还有我想用java调试,,,找不到查看的窗口

跃2.0 2017-07-27 09:43:28
package hahaha;

import java.util.Scanner;
public class haha {

public static void main(String[] args)
{
Scanner in=new Scanner(System.in);
String a=in.nextLine();
String[]smg={"zero","one","two","three","four","five","six","seven","eight","nine"};
//int []n={0,1,2,3,4,5,6,7,8,9};
String b;
int sum=0;
for(int i=0;i<a.length();i++)
{ sum+=a.charAt(i)-'0';}
b=String.valueOf(sum);
for(int i=0;i<b.length();i++)
{
{
if((b.charAt(i)-'0')==i)
{System.out.println(smg[i]);}
}
}

//System.out.println()
in.close();
}


// TODO Auto-generated method stub

}

...全文
314 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
110成成 2017-07-27
  • 打赏
  • 举报
回复
引用 8 楼 zuoside__lord 的回复:
[quote=引用 7 楼 minemine0418 的回复:] [quote=引用 6 楼 zuoside__lord 的回复:] [quote=引用 4 楼 as849167276 的回复:] 你有输入东西? String a=in.nextLine(); 这句话是阻塞型方法。如果你没有在控制台输入东西的话,一直都会停顿在这里等待输入的。
我想输入12345,然后输出yi wu[/quote] 运行后直接在控制台输入就行啦[/quote]它不输出啊,,,,不知道为什么,,,我输入数字没有输出,输入字母反而有,,,好像真的是逻辑有问题[/quote] 真的吗?你输入9个9看看有输出吗? 我建议你最好先弄懂代码逻辑,为什么要ASCII值。
跃2.0 2017-07-27
  • 打赏
  • 举报
回复
引用 7 楼 minemine0418 的回复:
[quote=引用 6 楼 zuoside__lord 的回复:] [quote=引用 4 楼 as849167276 的回复:] 你有输入东西? String a=in.nextLine(); 这句话是阻塞型方法。如果你没有在控制台输入东西的话,一直都会停顿在这里等待输入的。
我想输入12345,然后输出yi wu[/quote] 运行后直接在控制台输入就行啦[/quote]它不输出啊,,,,不知道为什么,,,我输入数字没有输出,输入字母反而有,,,好像真的是逻辑有问题
minemine0418 2017-07-27
  • 打赏
  • 举报
回复
引用 6 楼 zuoside__lord 的回复:
[quote=引用 4 楼 as849167276 的回复:] 你有输入东西? String a=in.nextLine(); 这句话是阻塞型方法。如果你没有在控制台输入东西的话,一直都会停顿在这里等待输入的。
我想输入12345,然后输出yi wu[/quote] 运行后直接在控制台输入就行啦
跃2.0 2017-07-27
  • 打赏
  • 举报
回复
引用 4 楼 as849167276 的回复:
你有输入东西? String a=in.nextLine(); 这句话是阻塞型方法。如果你没有在控制台输入东西的话,一直都会停顿在这里等待输入的。
我想输入12345,然后输出yi wu
跃2.0 2017-07-27
  • 打赏
  • 举报
回复
引用 3 楼 zc881124 的回复:
引用 2 楼 zuoside__lord 的回复:
[quote=引用 1 楼 minemine0418 的回复:]
呃呃呃,,,,,,,,初自学java不好意思可能代码写得太吓人了,,,哎呀呀,我也不是很会用debug,
首先Scanner 是需要你在控制台输入,第二 你的代码中加的打印信息太少。 [/quote]谢谢啊,但是好像你有输出啊,我再对比仔细瞅瞅,,,代码改得我自己都晕死了,,,
小C_cao 2017-07-27
  • 打赏
  • 举报
回复
你有输入东西? String a=in.nextLine(); 这句话是阻塞型方法。如果你没有在控制台输入东西的话,一直都会停顿在这里等待输入的。
110成成 2017-07-27
  • 打赏
  • 举报
回复
引用 2 楼 zuoside__lord 的回复:
引用 1 楼 minemine0418 的回复:
呃呃呃,,,,,,,,初自学java不好意思可能代码写得太吓人了,,,哎呀呀,我也不是很会用debug,


首先Scanner 是需要你在控制台输入,第二 你的代码中加的打印信息太少。
跃2.0 2017-07-27
  • 打赏
  • 举报
回复
引用 1 楼 minemine0418 的回复:
呃呃呃,,,,,,,,初自学java不好意思可能代码写得太吓人了,,,哎呀呀,我也不是很会用debug,
minemine0418 2017-07-27
  • 打赏
  • 举报
回复
110成成 2017-07-27
  • 打赏
  • 举报
回复
引用 11 楼 zuoside__lord 的回复:
其实我表示我还是不知道为什么要这样改,每次代码都差一点差一点,,,,我也很烦,,,,差一点就是差很多, 正确代码献上 package hahaha; import java.util.Scanner; public class haha { public static void main(String[] args) { Scanner in=new Scanner(System.in); String a=in.nextLine(); String[]smg={"zero","one","two","three","four","five","six","seven","eight","nine"}; String b; int sum=0; int i; for( i=0;i<a.length();i++) { sum+=a.charAt(i)-'0';} b=String.valueOf(sum); for( i=0;i<b.length();i++) { if(i==b.length()-1) {System.out.printf("%s",smg[b.charAt(i)-'0']);} else { System.out.printf("%s ",smg[b.charAt(i)-'0']); } } in.close(); } }
你想去数组的第一个和第五个,所以下标必须是1和5,针对你的代逻辑,所以你的b值必须是15,而你必须输入数字 根据你的代码逻辑-‘0’,所以任何输入几个数字,只要和为15,应该就能满足你的需求。
跃2.0 2017-07-27
  • 打赏
  • 举报
回复
其实我表示我还是不知道为什么要这样改,每次代码都差一点差一点,,,,我也很烦,,,,差一点就是差很多, 正确代码献上 package hahaha; import java.util.Scanner; public class haha { public static void main(String[] args) { Scanner in=new Scanner(System.in); String a=in.nextLine(); String[]smg={"zero","one","two","three","four","five","six","seven","eight","nine"}; String b; int sum=0; int i; for( i=0;i<a.length();i++) { sum+=a.charAt(i)-'0';} b=String.valueOf(sum); for( i=0;i<b.length();i++) { if(i==b.length()-1) {System.out.printf("%s",smg[b.charAt(i)-'0']);} else { System.out.printf("%s ",smg[b.charAt(i)-'0']); } } in.close(); } }
跃2.0 2017-07-27
  • 打赏
  • 举报
回复
死也不想交出代码的我啊,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,嘤嘤嘤,,,,,,,那不是我写的辣鸡,,,,,

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧