String in Java
众所周知,String是由字符组成的串,在程序中使用频率很高。Java中的String是一个类,而并非基本数据类型。 不过她却不是普通的类哦!!!
【镜头1】 String对象的创建
1、关于类对象的创建,很普通的一种方式就是利用构造器,String类也不例外:
String s=new String("Hello world");
问题:参数"Hello world"是什么东西,也是字符串对象吗?莫非用字符串对象创建一个字符串对象???
2、当然,String类对象还有一种大家都很喜欢的创建方式:
String s="Hello world";
问题:有点怪呀,怎么与基本数据类型的赋值操作(int i=1)很像呀???
在开始解释这些问题之前,我们先引入一些必要的知识:
(1) Java class文件结构
我们都知道,Java程序要运行,首先需要编译器将源代码文件编译成字节码文件(也就是.class文件)。然后在由JVM解释执行。
class文件是8位字节的二进制流
。这些二进制流的涵义由一些紧凑的有意义的项
组成。比如class字节流中最开始的4个字节组成的项叫做魔数
(magic),其意义在于分辨class文件(值为0xCAFEBABE)与非class文件。class字节流大致结构如下图左侧。
其中,在class文件中有一个非常重要的项——常量池
。这个常量池专门放置源代码中的常量信息(并且不同的常量存放在不同标志的常量表中)。如上图右侧是HelloWorld代码中的常量表
(HelloWorld代码如下),其中有四个不同类型的常量表(四个不同的常量池入口)。关于常量池的具体细节,请参照《深入Java虚拟机》第二版第
6章。
Java代码
public
class
HelloWorld{
void
hello(){
System.out.println("Hello world"
);
}
}
publi
相关文档:
java使用Math类,php使用系统函数
ceil功能 大于等于某数(常用于分页页数计算)
php中:ceil(a/b)
java中:(int)Math.ceil((double)a/b)) Math.ceil在java中需要传入double型,而返回也是double型。注意这里用(double)a/b才可以。
a/b,(dobule)(a/b)都不行。因为他们会先自动舍弃小数取得整数
flooe ......
鸡兔同笼问题就是二元一次方程组,高等数学里面用行列式来解此方程。具体过程可 Google “行列式 二元一次方程组
”。对于鸡兔同笼问题还要加上一个限制:方程的解必须是正整数。
下面是代码示例:
/**
* 鸡兔同笼问题。解法请 Google:“行列式 二元一次方程组”
*
* @author yiding.he
*/ ......
69、简述逻辑操作(&,|,^)与条件操作(&&,||)的区别。
区别主要答两点:a.条件操作只能操作布尔型的,而逻辑操作不仅可以操作布尔型,而且可以操作数值型
b.逻辑操作不会产生短路
70、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式?
a: 两种形式 dtd schema,b: 本质区 ......
1.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,结果为,提供reset
import java.util.*;
public class bycomma{
public static String[] splitStringByComma(String source){
if(source==null||source.trim().equals(""))
......