标题:这个程序有一个地方不大理解
只看楼主
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
 问题点数:0 回复次数:12 
这个程序有一个地方不大理解
import java.io.*;
public class SwitchTest3
{
public static void main(String[] args)
{
String strIn = "";
InputStreamReader in = new InputStreamReader(System.in);
BufferedReader buffIn = new BufferedReader(in);
System.out.print("Please enter a singal lower letter: ");
try
{
strIn = buffIn.readLine();//从命令行读入数据
}
catch (IOException e)
{
System.out.println(e.toString());
}
char letter = strIn.charAt(0);//将字符串转变成字符型数据
switch(letter)
{
case 'a':
System.out.println("the letter is a!");
break;
case 'b':
System.out.println("the letter is b!");
break;
case 'c':
System.out.println("the letter is c!");
break;
case 'd':
System.out.println("the letter is d!");
break;
default:
System.out.println("the letter is not between a and d!");
}
}
}

上面强调部分是用String变量strIn调用String类中的方法charAt();
但是书上有一句话是:对象变量要调用方法,必须先和一个具体的对象关联,也就是对象变量的初始化。
这个程序中的strIn 并没有和某一个String的对象显式关联,为什么可以执行呢?

谢谢。
搜索更多相关主题的帖子: void public import letter 
2007-01-25 18:21
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
strIn不就是一个对象吗?


String strIn = ""; 这是你的声明

可惜不是你,陪我到最后
2007-01-25 19:06
gfbupt
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-1-19
得分:0 
char letter = strIn.charAt(0);//将字符串转变成字符型数据

这不就是把输入的那个字符串的首字母赋给letter引用么.

String strIn在使用之前已经被初始化了.

[此贴子已经被作者于2007-1-25 19:40:09编辑过]

2007-01-25 19:39
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
你想问什么?


可惜不是你,陪我到最后
2007-01-25 19:43
autosun
Rank: 1
来 自:辽宁沈阳
等 级:新手上路
帖 子:107
专家分:0
注 册:2007-1-21
得分:0 
[QUOTE]4[/QUOTE]

2007-01-25 19:46
autosun
Rank: 1
来 自:辽宁沈阳
等 级:新手上路
帖 子:107
专家分:0
注 册:2007-1-21
得分:0 
以下是引用千里冰封在2007-1-25 19:43:00的发言:
你想问什么?


2007-01-25 19:47
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
得分:0 
不用new ,也能建立一个新的对象吗?
strIn 应该仅仅是一个对象变量而已啊。
2007-01-25 23:21
lxx2844
Rank: 1
等 级:新手上路
威 望:2
帖 子:129
专家分:0
注 册:2006-12-5
得分:0 
他是一对象的引用

www./ Bst Love java!
2007-01-26 00:16
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
得分:0 
以下是引用lxx2844在2007-1-26 0:16:00的发言:
他是一对象的引用

能不能说明白一点,是哪个对象的引用?
因为程序中没有很直接的声明,所以不大明白。

谢谢。

2007-01-26 00:28
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
得分:0 
SORRY,大伙。
少看了一句话“字符串变量是一个对象”。

谢谢各位了。
2007-01-26 00:33



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-118113-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.391564 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved