爪洼世界

老杨

04-推杯换盏

设置字体大小:

带着老学士的任务书,拜别老学士,退出门来,正好和雪山派的大人物撞了个满怀。

“我正找你,刚才得了两壶好酒,要不要一起喝点儿?”

你抬头望向瀑布外,却见夕阳西下,一轮晚霞映在天边,不想又是一天要过去了。

反正闲来无事,不若跟他一起喝点儿,跟大人物转身来到厨房,点了几个下酒菜,找了张闲桌坐了下来。

酒菜之间,两人推杯换盏,聊了一些江湖上的事情。

酒至半酣,大人物突然问道:“贤弟,int和String你了解多少?”

你微微一愣,别说,这几日虽然每天都听说int和String两种武功,但是这跟自己世界中的武功相比,太多与玄学,实在不知道是怎么一回事。

你把脑袋摇的跟拨浪鼓一样,道:“我还真不知道这其中的奥妙。兄台可否赐教一二?”

大人物收拾一下不正经的神态,一本正经的说道:“我想,你一定有很大的疑惑:武功,所谓武功,克敌制胜之手段,竞技的本领。但是,为什么爪洼世界的武功不是竞技之用而是注入之用呢?”

“其实,int也好,String也罢,其本质跟武功关系不大,其实int和String都是一种形态,或者叫做类型,通过这种形态可以变化出各种的所谓的变量。”

“我们平时所能见到的,大多与这两种形态有关,比如数字,就是int,而文本就是String。整个爪洼世界被一张大网所笼罩,其核心就是爪洼虚拟机,爪洼虚拟机的运行前,靠的是处理器的运行,而处理器的运行就是通过从内存中读取内容或者写入内容。”

“所谓的写入内存,并不是用笔去写,而是通过符咒的方式,加上武功的帮助,最终完成这些内容的写入,因此,武功在很大程度上,决定了这些内容能够正确的写入到内存中去。”

大人物停下话头,呷了一口酒,闭眼砸吧了一下滋味后,缓缓的又道:“你有没有好奇过,为什么这里写符咒用的都是西方文字?”

你接触多了类似的事情,到并不非常在意这件事情,大人物问到此时,你却才发现的确如此。

大人物从你的神色中就已经看出来了你的不解,于是道:“所谓的爪洼世界,其实本来就不是天朝的原有的东西,这里其实就是一个平行时空,而这里的所有人都是因为我们是天朝人,所以周围所有人都是天朝人。说白了,我们在一个平行空间中,所有你看到的这一切,都是NPC,你其实就是在一个游戏里。”

你听罢大人物的话,突然想起那天在山脚下睡梦中乔布斯说过的话,你激动的抓住大人物的手,问道:“你也是穿越过来的,是不是?你一定可以带我出去的,是不是?”

大人物被你抓的有点儿疼,连声道:“你先放开我,我慢慢跟你说。”

“你猜的没错,我确实和你一样是穿越过来的。但是我并没有什么大志向,正好有一天雪山派招工,我就去了,然后就被派到这里。我觉得我现在挺好,我也不认为自己能走出去,所以我就假装是个NPC,在这里混吃混喝的,啥也不愁。”

“别说我了,我反正是不打算出去的。我就是感觉跟你投缘,所以才告诉你这些,你得把这些事情烂在肚子里,不然我可就惨喽。”

你见大人物并没有打算离开的意思,觉得有些悻悻然,但是你转头又想,说不定可以从大人物这里得到一些离开的关键,于是稳定心神的问道:“既然如此,我自当给兄台保密,那么还请兄台多告诉我一些知识吧。”

大人物道:“只要你保密,其他的你放心,我自当言无不尽的。”

“天朝人不懂得这些编程的概念,他们只是按照程序设定的方式进行他们的工作,因此他们需要把不明白的问题通过他们自己的理解解释的合情合理,因此就有了武功,符咒这些概念。这也不打紧,有了这些概念,其实更容易让你学会编程的一些内容。”

“我们继续说回int和String的问题,其实在编程的世界中,int和String就是两种数据类型,以后你还会学到更多的数据类型。所谓的符咒,在编程世界中被称为类,这里存在一个面向对象的概念,以后你会慢慢明白,我不需要对你说的太多,我只是要告诉你,符咒就是类,而类就是类型。”

“String类型是一种特殊的类型,首先你记住,String它是一个类,因为S是大写的,只要以后看到第一个字母大写的标识符……对了,标识符就是你看到的所有的变量,常量,类名,方法名等等,这些我们自己定义的内容都叫做标识符。你只要看到第一个字母大写的标识符,那么就可以确定它是类。当然也有例外,慢慢你就懂了,先这样记住就行。”

“String这个类非常强大,它不仅可以定义字符串,还能改变其他类型的内容变为字符串。我给你写个符咒你看看能不能看得懂。你不是已经从阿娇那里知道包的概念了吗?你可以以今天的日期做一个包,然后给我一个符咒,我写给你看。”

你听从大人物的建议,在原来包的中有放入一个小包,写上今天的日期,又拿出一张符咒递给大人物。之间大人物快速的在符咒上写了些内容

package xkx.javaworld.day0404;

/**
 * 符咒包: xkx.javaworld.day0404
 * 总纲名: StringDemo1
 * 制符人: 小虾米
 * 符咒文: String的相关知识
 * 制符日: 爪洼历1127年04月04日
 */
public class StringDemo1 {
    public static void main(String[] args) {
        String str1 = "hello";
        String str2 = " ";
        String str3 = "world";
        System.out.println(str1);
        System.out.println(str2);
        System.out.println(str3);
        System.out.println(str1 + str2 + str3);
    }
}

大人物写完之后,将符咒贴在桌子上,只见桌子上显现一些内容:

符咒效果
hello

world
hello world

大人物说道:“你看,我定义了三个String类型的变量,分别为str1,str2,str3,当我去执行这个符咒的时候,println方法会将这三个变量的值显现出来,并且我通过+符号可以将在和三个值串联为一个内容,这就是String类型的基本使用。”

“我再写一张关于int类型的给你看。”说罢,大人物又从你包中拿出一张符咒写了起来。

package xkx.javaworld.day0404;

/**
 * 符咒包: xkx.javaworld.day0404
 * 总纲名: IntDemo02
 * 制符人: 小虾米
 * 符咒文:
 * 制符日: 爪洼历1127年04月04日
 */
public class IntDemo02 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        System.out.println(a);
        System.out.println(b);
        System.out.println(a + b);
        System.out.println(a - b);
        System.out.println(a * b);
        System.out.println(a / b);
    }
}

“这是int类型,它表示的就是一个整数,就像我们学过的一样,数字之间是可以进行运算的,我们称为四则运算。但是应该你也知道,在爪洼世界,也就是编程世界,有时候除法运算不是你所理解的那样。有的编程语言中的除法可能会有小数,但是爪洼,也就是Java,它的除法运算不会保留任何的小数。我们看看结果。”

符咒效果
30
-10
200
0

“就像你看到的,除法运算的结果为零,原因就是不保留小数。我们都知道10除以20应该是0.5,而int的特性就是只取整数不取小数,所以0被保留,.5被舍弃,要记住,这里没有四舍五入的概念。”

“我们今天再看一个符咒,我们这一次把int和String一起使用。”

package xkx.javaworld.day0404;

/**
 * 符咒包: xkx.javaworld.day0404
 * 总纲名: IntStringDemo03
 * 制符人: 小虾米
 * 符咒文:
 * 制符日: 爪洼历1127年04月04日
 */
public class IntStringDemo03 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        String str = "总和";
        System.out.println(str + a + b);
        System.out.println(a + str + b);
        System.out.println(a + b + str);
    }
}

大人物写罢,直接放在桌子上,启动了符咒。

符咒结果
总和1020
10总和20
30总和

当结果显现之时,大人物道:“我希望你能明白这个符咒的意义。String类型通过+符号,会将其他的类型变为String类型,刚才我已经说过了。所以第一个println方法显示结果的时候先通过str字符串转化了a变量,字符串本身是不具备四则运算的,所以在继续合并变量b的时候,a和b不会进行加法运算,因此str,a,b的值就像是拓写一样顺次被写了出来。”

“第二种比较容易理解,str作为String类型,任何变量与之相加都会变为String类型,因此a和b都直接被写了出来。”

“我希望你能明白的是第三种,像第一种情况,String类型的后面有多少个其他类型变量都会被变为String类型,但是前面不一样。因为执行的过程是从上往下,从左往右,因此,前面的a和b作为数字类型,他们具有加法运算的功能,所以先进行了加法操作,然后被str给同化为String类型,这一点要牢牢记住,这三种情况要一一分清才行。”

大人物说罢,收起三张符咒递给了你,你小心翼翼的把符咒收好。

大人物晃了晃酒葫芦,发现不一会儿功夫,已经将两壶酒喝了个精光。

“今天就说到这吧,没有酒了,说啥也不香了,而且今天跟你说的也很多了。千万记住,给我保密。”

你郑重的回应了大人物,大人物感觉挺放心,又道:“兄台,我这里有些任务可以给你,我不能帮你走出去,但是我可以帮你提升一些经验,祝你早日离开。”

说罢,递给你几张符咒。

任务1:学会保密

有的时候,相信一个人不是非常容易的事情。但是由不得不冒着风险去相信别人。大人物希望你能够真的为他保守秘密,所以大人物希望你能够将“我将保守大人物的秘密,不向任何人提起这件事情。”这句话打印10遍,虽然不知道是否管用,但是总是比没有任何的字面保证来的保险一些。
package xkx.javaworld.level01.task05;
//在这里编写代码

任务2:混乱的注释

符咒师的工作有时候会非常无聊,无聊到只是修改客户写错的注释。大人物今天得到一份基本不赚钱的活,只要把注释修改正确就可以了,或许你可以帮大人物改一下。
客户本来是想要显示一句诗:明日复明日,明日何其多。
package xkx.javaworld.level01.task06;

/**
 * 符咒包: xkx.javaworld.level01.task06
 * 总纲名: Task
 * 制符人: 小虾米
 * 符咒文: 混乱的注释
 * 制符日: 爪洼历1127年04月04日
 */
public class Task {
    /*
        符咒师的工作有时候会非常无聊,无聊到只是修改客户写错的注释。
        大人物今天得到一份基本不赚钱的活,只要把注释修改为正确就可以了。
        或许你可以帮大人物改一下。
     */
    public static void main(String[] args) {
        //String s = "明日";
        //System.out.println("明日");
        //System.out.println("复");
        //System.out.println("重复");
        //System.out.println(s);
        //System.out.println(",");
        //System.out.println(s);
        //System.out.println("明日");
        //System.out.println("何");
        //System.out.println("如何");
        //System.out.println("he");
        //System.out.println("少");
        //System.out.println("奇多");
        //System.out.println("其");
        //System.out.println("多");
        //System.out.println("多。");
    }
}

任务3:注释的用法

客户有时候会写错一些内容,但是我们不应该直接去修改这些内容,最佳的做法就是通过注释原有的内容,然后再去定义新的内容。
在检查客户的符咒是,发现客户把名字写错了,这是一个关于老学士的符咒,你看看能不能改一下。
package xkx.javaworld.level01.task07;

/**
 * 符咒包: xkx.javaworld.level01.task07
 * 总纲名: Task
 * 制符人: 小虾米
 * 符咒文: 注释的用法
 * 制符日: 爪洼历1127年04月04日
 */
public class Task {
    /*
        客户有时候会写错一些内容,但是我们不应该直接去修改这些内容,最佳的做法就是通过注释原有的内容,然后再去定义新的内容。
        在检查客户的符咒是,发现客户把名字写错了,这是一个关于老学士的符咒,你看看能不能改一下。
     */
    public static void main(String[] args) {
        String name = "老居士";
        String text = "您好," + name + ":";
        System.out.println(text);
    }
}

任务4:更多的修改

我们在符咒中又发现了多处需要修改的内容,其中有一处就是老学士在给龙木岛主的符咒中,搞错了两个人的年龄。
我们都认为你还记得之前帮老学士计算的岛主们的年龄一事,所以这个还是由你来处理更好一些。
package xkx.javaworld.level01.task08;

/**
 * 符咒包: xkx.javaworld.level01.task08
 * 总纲名: Task
 * 制符人: 小虾米
 * 符咒文: 更多的修改
 * 制符日: 爪洼历1127年04月04日
 */
public class Task {
    /*
        我们在符咒中又发现了多处需要修改的内容,其中有一处就是老学士在给龙木岛主的符咒中,搞错了两个人的年龄。
        我们都认为你还记得之前帮老学士计算的岛主们的年龄一事,所以这个还是由你来处理更好一些。
     */
    public static void main(String[] args) {
        String longName = "木岛主";
        int longAge = 67;
        System.out.println("姓名:" + longName + ",年龄:" + longAge);
    }
}

看网友对 04-推杯换盏 的精彩评论

我来说一句