随笔 - 5  文章 - 11  trackbacks - 0
<2006年8月>
303112345
6789101112
13141516171819
20212223242526
272829303112
3456789

常用链接

留言簿(2)

随笔档案

文章档案

最新随笔

搜索

  •  

最新评论

存了一下档。。。继续
上回说道用户的输入的字符串是返回值,那么如果用户输入是数字呢?那么这个时候你就要用个办法把数字转化成字符串咯,呵呵,满容易想到的是吧
调用方法:Interger.parseInt或者Double.parseDouble方法
可是其实这里问题很多(因为是初级嘛,呵呵,别急),比如如果你输入的input里又有数字又有字符串呢?那么就会产生异常!除非你捕获这个异常,但是这个就要下次再讲了^_^(也许是下下次
下面我们和着一个程序来总结一下:
import javax.swing.*;

public class InputTest
{
   public static void main(String[] args)
    {
      String name=JOptionPane.showInputDialog
       ("What is your name?");

      String input=JOptionPane.showInputDialog
       ("How old are you?");
       int age=Integer.parseInt(input);

       System.out.println("Hello, "+name+
".Next  year,you'll be "+(age+1));

        System.exit(0);
}
}
关于这个程序,有几点补充的,
System.exit(0);的调用是用来结束JOptionPane.showInputDialog这个调用的,因为这个启动的线程不会自己关闭,因此我们要调用System.exit(0);来把它关掉,好理解把^_^
下面讲讲格式输出:

posted @ 2006-09-03 16:26 jiqihuman 阅读(254) | 评论 (2)编辑 收藏
很久没来了,上阵子参加一个量子信息的会,一直折腾了好久,呵呵,今天继续写我的java之旅^_^
这次会从字符串讲起,试着回忆到不规则数组吧,(基本按照当时学习corejava这本书来的)还是初级的
java本身没有内置的字符串类型的,但是标准java库里有一个叫string的预先定义的类,至于类的定义,上一篇好像讲过了,我就不说了。所以java里用起字符串来其实是相当的方便滴^_^
下面讲讲几个常用的方法:
串连接:
String  Tom = "Old";
String Jim = "Young";
String Hellen = Tom+Jim;
那么Hellen的值就变成TomJim,呵呵,很简单是吧
子串的提取:
String greeting = "Hello";
String s = greeting.substring(0,4);
我们得到的是Hell这个字符串,这就是子串的提取,其中0,4表示的是从位置0到位置4(不包括位置4)的字符
(源代码有很多直接从core java2里copy的,要是有错误大家直接翻书去哦)
字符串的长度:
String greeting = "Hello";
int n = greeting.length();
 然后就计算得到字符串的长度是5,在这里有一个有趣的问题,在java中,String类的对象是不可变的,这是什么意思呢?就是说Hello这个string,它的内容是不可变的,它永远是字符序列s t r i n g ,如果要改变字符串的内容,纳闷就要使它指向一个不同的字符串,这样势必降低了程序的效率,而书中将的很清楚,效率可能会降低,但是它的有点很明显,那就是:编译器可以安排共享的字符串
其实这个道理很简单,我们可以把Hello这个字符串想象成一个模版,一个比较重要的模版,那么我们共享使用它的机会一定比较多,说白了就是我们一般不会去使用helso.helto.helmo,之类的东东的嘛,所以这样来看使用这样的共享程度比较大的字符串的优势就比它的降低效率犯的错误大类^_^
其实,java是很贴心的,它专门提供了一个单独的stringbuffer类,它就把上面的所谓低效率的情况给解决了。
测试两字符串相等:
s.equals(t)
就是测试字符串s和t是不是相同
!!注意:不要使用== 来检测两个字符串是否相等,它只是测定两个字符串是否存储在同一个位置。虽然在同一个位置的串一定相等,但是如果两个相等的串在不同位置,那不究歇菜了。。。
书里提示了一点,我觉得熟悉c++的哥们要注意一下啊,因为在c++中可是用==来检测两个字符串是否相等的,所以嘛。。。
喝口水,继续拉^_^
下面是读取输入的问题,调用System.out.println方法很容易输出的嘛,第一个hello例子大家都看到了嘛,但是输入呢?学过c的哥们都知道c里的输入ms也是比输出稍稍麻烦一点的,怎么说也还要先输入sth嘛,呵呵。java中,可以给键盘一个对话框,调用的方法是:
JoptionPane.showInputDialog(promptstring)
返回值是用户的输入,

posted @ 2006-09-03 16:03 jiqihuman 阅读(344) | 评论 (0)编辑 收藏

还是有点头绪的好,所以现在就从very beginning来聊聊java。
记得刚开始学java的时候还是比较郁闷的,从我学软件的同学那里借来了一本core java(其实早就偷瞟了网上的一些东东拉^_^),然后正式开始java之旅。其实满庆幸自己第一本比较正规的java书籍是core java的,后来看了很多人的评论,加上自己的心得,认为该书确实比较适合初学者,大家没必要被core这个词吓坏的,我原来就一直这样觉得,有 core的书籍应该会比较core,也比较难,不过嘛。。。^_^
其实第一个程序很傻波的,人家有源程序的,我非要自己照猫画虎。。。
public class HelloWorld
{
public static void main(String args[])
 {
System.out.println("Hello World!");
}
}
补充一句,我是在记事本上完成的输入,在命令行下完成的编译,在命名的时候取为了hello.java,结果当然出现了错误啦,不过幸好提示很清楚,“类HelloWorld是公共的,应在名为HelloWorld.java的文件中声明public class HelloWorld”
后来经过学习,才知道原来HelloWorld这是一个类,一个公用的类,它的名字叫做“HelloWorld”,这整个程序就是HelloWorld类,java规定文件名要是这个公用的类的名字的。。。我想如果没有教程,这个地方应该会使初学者有点疑惑吧^_^(我的这个blog只是记录一些学习的小心得,自己随便记录一些东东,不是什么教程,所以不全面的地方大家海涵,要是有错误,就靠飘过的大侠多指教啦^_^)
java是面向对象的,这个大家都知道,我在学习中也碰到了一些半生不熟的概念,熟悉c++的兄弟应该会比较了解啦。我在这里再写一遍,目的是让自己重温一边,哈哈^_^
继承:继承是一种机制,我记得这个应该是面向对象中引入的概念,它使得一个类能够从另一个类中继承所有的行为和属性。如果有谁对继承有更多的见解,欢迎指教,因为我一直觉得继承这个概念很简单,但又有说不出的感觉,生怕理解有不透彻的地方,呵呵^_^
子类和超类:从别的类继承下来的类叫做子类,那个被他继承的类叫做超类。
java通过只允许单继承来简化继承机制,我觉得这个比较爽,c++中的多重继承至少我觉得很晕,可能我现在还比较菜吧^_^
看来刚开始写长blog比较容易累吧待续待续,起立放松一下^_^
ps:有人说我的这个blog比较弱的,唉,没办法,可能是我比较菜吧,写不出有技术含量的美文。。。鉴谅鉴谅,先闪了,去欣赏几篇强的blog提高一下^_^

posted @ 2006-08-16 21:02 jiqihuman 阅读(276) | 评论 (4)编辑 收藏