当前位置: 首页 > news >正文

512m内存做网站百度检索入口

512m内存做网站,百度检索入口,怎么做网站维护,邢台移动网站设计一,什么是String类 在C语言中已经涉及到字符串了,但是在C语言中要表示字符串只能使用字符数组或者字符指针,可以使用标准库提 供的字符串系列函数完成大部分操作,但是这种将数据和操作数据方法分离开的方式不符合面相对象的思想&…

一,什么是String类

在C语言中已经涉及到字符串了,但是在C语言中要表示字符串只能使用字符数组或者字符指针,可以使用标准库提 供的字符串系列函数完成大部分操作,但是这种将数据和操作数据方法分离开的方式不符合面相对象的思想,而字 符串应用又非常广泛,因此Java语言专门提供了String类

二,常用方法

2.1字符串构造方法

既然了解了String类,我们如何初始化它呢。

我们有三种常见方法,

第一种是直接引用

String name = "小明";

第二种是创建新对象,引用对象

String name1 = new String("小华");

第三种是用字符数组转换

        char[] str = new char[]{'1','2','3','4'};String name2 = new String(str);

我们来打印一下

都能正常输出。

我们说过String是引用类型,那么在内存是怎么划分的呢

我们的name在堆上会指向我们在栈上创建的新对象,都是对我们的对象进行操作的。

在java中我们引用起来的也是引用类型,我们来证明下。

        int sz = "12345".length();System.out.println(sz);

我们能对这个字符串.出我们length();方法,说明“12345”也是一个引用类型。

2.2String对象的比较

我们在java中肯定会涉及到字符串的比较的,那我们该如何去做呢,

第一个就是直接用==进行比较

什么?我们能直接去比吗,是的,我们在java中对于基础数据类型可以直接用==比较他们的值。

而对于引用类型我们比的是他们的地址,我们来测试一下

        String student1 = new String( "小明");String student2 = new String( "小明");System.out.println(student1 == student2);

我们看到我们创建了两个对象,他们字符串的内容都是小明,那么他们会输出相等的true吗

答案是不一样的,那我们只能去比较字符串的地址,怎么才能去比较具体的内容呢,我们string类型提供了我们equals方法。

boolean equals(Object anObject)方法:按照字典序比较

System.out.println(student1.equals(student2));

        

我们看到答案是相同,String类重写了我们的equals方法,让他每一个字符串按照词典顺序去比较,那我们如何忽略大小写去比呢,就像我们在网页登录时验证码是忽略大小写的,

    public static void main(String[] args) {String student1 = new String( "Hello");String student2 = new String( "hello");System.out.println(student1 == student2);System.out.println(student1.equals(student2));}

我们看到用这个方法是做不到的,

System.out.println(student1.equalsIgnoreCase(student2));

我们使用这个方法,就能忽略大小写对字符串的影响。

我们还可以不返回true和flase,我们可以根据字符串比较字母的差值,返回对应的数字,我们用

compareto方法来实现,

    public static void main(String[] args) {String a = new String("abc");String b = new String("abd");System.out.println(a.compareTo(b));}

我们看到返回值为负一,第一个字符串小于第二个字符串。

同样我们也可以用compareto来忽略字符串大小写的比较。

public static void main(String[] args) {String a = new String("abc");String b = new String("abC");System.out.println(a.compareTo(b));System.out.println(a.compareToIgnoreCase(b));}

我们看到,第二种方法是已经忽略了字符串大小写了的,第一种没有忽略,差值正好是32。

2.3字符串查找

char charAt(int index),第一个方法,可以返回字符串具体下标的值,不能返回越界的下标值。

我们来举例子

        String arr = new String("Hello");char s = arr.charAt(0);System.out.println(s);

我们来访问arr字符串的零下标。

成功访问到了。

        String arr = new String("Hello");for (int i = 0; i < arr.length(); i++) {char s1 = arr.charAt(i);System.out.print(s1);}

我们还可以一个一个访问通循环打出我们的字符串。

int indexOf(int ch),int indexOf(int ch, int fromIndex)我们可以通过index函数来找我们想要的字符或者字符串第一次出现的位置,fromlndex我们指定开始寻找的位置,我们来举个例子

        String name = new String("Hello World");System.out.println(name.indexOf('o'));System.out.println(name.indexOf('o',5));System.out.println(name.indexOf("ll"));System.out.println(name.indexOf("ll",5));

我们可以看到,我们找o出现的位置5下标之后o出现的位置,ll出现的位置,5之后ll出现的位置

运行结果非常明显,第一次o出现在4下标,5之后是7下标,ll出现在2下标5之后ll并没有出现返回负一。

int lastIndexOf(int ch),我们不光有从前往后找,还有从前往后找,用法和IndexOf()用法一样。

        String name = new String("Hello World");System.out.println(name.lastIndexOf('o'));System.out.println(name.lastIndexOf('o',5));System.out.println(name.lastIndexOf("ll"));System.out.println(name.lastIndexOf("ll",5));

结果就完全不一样了。

2.4转化

我们在数值和字符串之间也可以发生转换,比如,我们可以把整数,小数,布尔类,甚至一个对象都转化成字符串,我们使用valueOf

我们来尝试下

    public static void main(String[] args) {int a = 1234;double b = 12.34;boolean c = true;System.out.println(String.valueOf(a));System.out.println(String.valueOf(b));System.out.println(String.valueOf(c));System.out.println(String.valueOf(new Student("小明",18)));}

还有我们的类

public class Student {public String name;public int age;public Student(String name, int age) {this.name = name;this.age = age;}public String toString(){return name + age;}
}

我们试着把这4种类型转化为字符串我们看看是否能成功

我们看到了虽然是输出了,但是这到底是不是字符串呢,我们加一下试试就知道了。

    System.out.println(String.valueOf(a)+11);

加上11.我们看看能不能出结果

哎我,这是什么答案呢,没有相加,它实际上变成了一个新的字符串,哇,那么我们java的字符串就可以直接相加了吗,可以但不推荐,为啥呢,因为太慢了,这个过程看似很短,但是它设计了很多创建对象的过程,并不是,直接使用一个对象进行操作,所以效率很低下我们后面再讨论怎么解决这个情况

我们把这4种类型转化成了字符串,那么怎么把它从字符串转化回来呢,

我们可以用包装类

        int a = Integer.parseInt("1234");double b = Double.parseDouble("12.34");boolean c = Boolean.parseBoolean("false");System.out.println(a+11);System.out.println(b);System.out.println(c);

我们看到结果确实为数字我们可以进行加减

之前提到了字符数组可以转化为字符串,而字符串也可以转化为字符数组

我们来进行演示

    public static void main(String[] args) {String s = new String("Hello World");char[] str = s.toCharArray();for (int i = 0; i < str.length; i++) {System.out.print(str[i]);}}

成功转化

在java中依旧保留了c语言格式化输出的特点

比如%d

    public static void main(String[] args) {String s = String.format("%d-%d %d",1,2,3);System.out.println(s);}

我们这样就完成了。

2.字符串替换

我们使用replaceall,repleaceafist, replace,进行字符串指定字符,或者单个字符的替换。

        String s = new String("Hollow Horld");System.out.println(s.replace('H','W'));System.out.println(s.replaceAll("o","w"));System.out.println(s.replaceFirst("o","ss"));}

+First是代表替换第一次的,ALL为全部替换,很灵活的函数

2.6字符串拆分

我们还可以进行字符串的拆分,通常用到网页网址上的拆分,我们继续来举例子:

        String web = new String("student&0x123456");String[] Strings = web.split("&");for (int i = 0; i < Strings.length; i++) {System.out.println(Strings[i]);}

我们使用splist函数进行划分,传入&表示我我们要对&左右的进行操作,它会把字符串拷贝为两份,而不是将之前的字符串一分为二,我们将字符串放到数组即可遍历,同样我们也可以遍历多个字符串,并且特殊的是,我们在拆分.,+,|,*时都有使用转义字符//进行声明,如果是/字符我们要写成。

2.7字符串截取

我们使用substring()进行字符串截取。

        String name = new String("123425516");String s = name.substring(7);System.out.println(s);

我们来看结果

从第7个位置截取到最后

2.8其他操作方法

我们还有很多很多的字符串操作方法,toUpperCase, toLowerCase,tim()等等·这里就不一一列举了

字符串时不可变的,里面的内容无法修改,我们之前在距离的时候都是再创建一个字符串,所以我们使用StringBulider和StringBuffer进行字符串的修改这里面不仅保留了字符串的功能还有很多的扩展功能这里就不一一列举了。我们下篇文章来讲

http://www.hengruixuexiao.com/news/50387.html

相关文章:

  • 网页设计制作一个餐饮网站昆山网站建设公司
  • 网站制作 郑州网络推广方式有哪些
  • 买了虚拟主机怎么做网站山东seo百度推广
  • 虎门做网站的公司什么网站推广比较好
  • 专业的网站制作正规公司百度产品大全首页
  • 怎么修改网站关键词百度网站的网址是什么
  • 南沙做网站百度搜图入口
  • 会员管理系统手机免费版广州seo推广营销
  • 广东省人民政府seo网站优化报价
  • b2c网站html关键词生成器 在线
  • 做钢材什么网站好东莞疫情最新数据
  • 哪个浏览器可以看禁止网站seo优化或网站编辑
  • 厦门网站的关键词自动排名百度云网盘登录入口
  • 衢州建筑地基加固win10优化软件哪个好
  • 接私活做网站设计潍坊做网站哪家好
  • 值得买 wordpress班级优化大师官网下载
  • 静态企业网站模板下载外链怎么发
  • wordpress如何修改html代码seo优化查询
  • 淄博网站建设设计公司石家庄网络推广优化
  • 本地建设网站seo技术网
  • 温州市住房和城乡建设厅网站线上线下一体化营销
  • 自己开店怎么办会员系统岳阳seo公司
  • 10黄页网站建设百度模拟点击软件判刑了
  • dream网站怎么做框架惠州seo关键字优化
  • 网站手机优化徐州seo网站推广
  • 设计公司起名字大全seo关键词查询
  • 用什么软件做网站设计谷歌官方网站注册
  • 宁波网站建设哪家强搜索引擎优化报告
  • 新疆建设云网站办理程序营销推广方案ppt案例
  • 建站用什么代码最好怎么样做seo