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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 三眼皮 中级黑马   /  2014-3-6 21:43  /  967 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

利用 main(String args[])中的 args 数组来对参数进行赋值,得到的值是什么类型的??
public class Test1
{
        public static void main(String[] args)
        {
                System.out.println(args[0]);
                System.out.println(args[0]+1);
                }
                }
输入java  Test1 a
得到的结果是 a1
为什不是98????

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

4 个回复

倒序浏览
main(String[] args)方法里接收的是字符串类型的数据
,  System.out.println(args[0]+1);,相当于是一个字符串+一个数字,而在java中,任何数据类型碰到String类型的变量或者常量之后都会向String类型转换。所以你打印出来的结果,不是97+1,而是“a”+1=a1{:3_68:}

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
centian2005 发表于 2014-3-6 22:07
main(String[] args)方法里接收的是字符串类型的数据
,  System.out.println(args[0]+1);,相当于是一个字 ...

哈哈。谢了
回复 使用道具 举报
楼上说的很清楚了,补充一点,

字符串+数字 --> “a”+1=a1
字符 + 数字 --> 'a'+1= 98

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
“a”+1=a1 我重点说说这个吧!
其实就是API里 String类里面写的“Java 语言提供对字符串串联符号("+")以及将其他对象转换为字符串的特殊支持”所以无论什么字符类型只要+加上字符串 都会生成新的字符串形式;“a”+1

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马