A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 唐侠君 于 2013-12-10 22:22 编辑

package com.itheima;

public class Test5 {
    public static void main(String args[]){
   
     for(int x=1;x<=9;x++){
             for(int y=1;y<=x;y++){
                     System.out.print(y+'*'+x+'='+y*x+'\t');
            
     }

     System.out.println();
}
    }
}


运行结果:
115
117120
119123127
121126131136
123129135141147
125132139146153160
127135143151159167175
129138147156165174183192
131141151161171181191201211

评分

参与人数 1技术分 +1 黑马币 +3 收起 理由
狼王 + 1 + 3 赞一个!

查看全部评分

13 个回复

倒序浏览
把单引号改成双引号就可以了
回复 使用道具 举报
747437484 发表于 2013-12-10 11:52
把单引号改成双引号就可以了

有什么区别吗,有的时候单引和双引都可以呀??
回复 使用道具 举报
双引号才是连接字符的符号
回复 使用道具 举报
zzkang0206 发表于 2013-12-10 12:28
双引号才是连接字符的符号

这与 * 所表达的意思有关吗?之前做的一个图形的题(倒三角和正三角的)用*来表示的,那时单引和双引的结果是一样的呀?
回复 使用道具 举报
唐侠君 发表于 2013-12-10 12:43
这与 * 所表达的意思有关吗?之前做的一个图形的题(倒三角和正三角的)用*来表示的,那时单引和双引的结 ...

是因为加号(+)的原因吗??
回复 使用道具 举报
唐侠君 发表于 2013-12-10 12:43
这与 * 所表达的意思有关吗?之前做的一个图形的题(倒三角和正三角的)用*来表示的,那时单引和双引的结 ...

是因为加号(+)的原因吗
回复 使用道具 举报
情祭 中级黑马 2013-12-10 13:01:25
8#
//九九乘法表
public class Text3 {

        public static void main(String[] args) {
                for(int i=1;i<=9;i++){
                        for(int j=1;j<=i;j++){
                                System.out.print(j+"*"+i+"="+i*j+"\t");
                        }
                        System.out.println();
        }

       
        }

}

运行结果:
1*1=1       
1*2=2        2*2=4       
1*3=3        2*3=6        3*3=9       
1*4=4        2*4=8        3*4=12        4*4=16       
1*5=5        2*5=10        3*5=15        4*5=20        5*5=25       
1*6=6        2*6=12        3*6=18        4*6=24        5*6=30        6*6=36       
1*7=7        2*7=14        3*7=21        4*7=28        5*7=35        6*7=42        7*7=49       
1*8=8        2*8=16        3*8=24        4*8=32        5*8=40        6*8=48        7*8=56        8*8=64       
1*9=9        2*9=18        3*9=27        4*9=36        5*9=45        6*9=54        7*9=63        8*9=72        9*9=81       


单引号引的数据 是char类型的,双引号引的数据 是String类型的,单引号只能引一个字符,而双引号可以引0个及其以上。

回复 使用道具 举报
嘿嘿,明白了,在输出语句中,有加号(+)的,用双引号加号的作用是连接字符串的,用单引号加号的作用是做加减法的,而且是int型和char型的强制类型转换,所以才出现全是数字的运行结果,谢谢大家的参与,让我终于想明白了!{:soso_e112:}
回复 使用道具 举报
class Demo2  {            public static void main(String args[]){                                          for(int x=1;x<=9;x++){                              for(int y=1;y<=x;y++){                                     // System.out.print(y+'*'+x+'='+y*x+'\t');把这一行的单引号改为双引号如下                                      System.out.print(y+"*"+x+"="+y*x+"\t");                                                    }                       System.out.println();                 }                     } }
回复 使用道具 举报
class Demo2
{
           public static void main(String args[]){
                  
                     for(int x=1;x<=9;x++){
                             for(int y=1;y<=x;y++){
                                    // System.out.print(y+'*'+x+'='+y*x+'\t');把这一行的单引号改为双引号如下
                                     System.out.print(y+"*"+x+"="+y*x+"\t");
                             
                     }

                     System.out.println();
                }
                    }
}
回复 使用道具 举报
System.out.print(y+'*'+x+'='+y*x+'\t');这里应该使用双引号来表示字符串且用“+”完成字符串的拼接;而楼主使用的单引号('') ,则表示char类型的字符,然后会自动转型为int类型和y、x等做加法操作,就输出了楼主发的那个比较奇怪的结果。
注意:只有表达式中包含一个字符串的时候,加好("+")才会被重载!
回复 使用道具 举报
  1. package com.itheima;

  2. public class Test5 {
  3. public static void main(String[] args) {
  4.      for(int x=1;x<=9;x++){
  5.            for(int y=1;y<=x;y++){
  6.                 System.out.print(y+"X"+x+"="+y*x+" ");
  7.            }
  8.                 System.out.println();
  9.       }
  10.     }
  11. }

复制代码

回复 使用道具 举报
System.out.print(y+'*'+x+'='+y*x+'\t');你输出有误,你应该用字符串连接上,而不是用字符
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马