请查看String.equals()方法的实现代码,注意学习其实现方法。

package sum;

public class StringEquals {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

String s1=new String("Hello");

String s2=new String("Hello");

System.out.println(s1==s2);

System.out.println(s1.equals(s2));

String s3="Hello";

String s4="Hello";

System.out.println(s3==s4);

System.out.println(s3.equals(s4));

}

}

字符串进行比较是比较的地址是否一样,而不是内容是否相等,

而要比较内容是否相等要调用方法

使用equals()或equalsIgnoreCase()方法比较两字串内容是否相同,使用==比较两字串变量是否引用同一字串对象:Demo: StringEquals.ava

compareTo:使用字典法进行比较,返回0表两字串相等,小于返回负值,大于返回正值

regionMatches:比较两字串中的某一部分是否相等。示例:StringCompare.Java

查询字串是否以某字串开头和结尾:startsWith和endWith方法 。Demo: StringStartEnd.java

在字串查找字符或子串,调用indexOf和lastIndexOf方法即可。Demo:StringIndexMethods.java

课后作业1:字串加密

古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报:

请编写一个程序,使用上述算法加密或解密用户输入的英文字串要求设计思想、程序流程图、源代码、结果截图。(截止时间2017-10-27晚18:00)

设计思想:通过将字符串拆分,转换为ascii码的加减,再将其输出

//陈天时  20163591 信1605-3

package zichuanjiami;

import java.util.Scanner;

public class Zichuanjiami

{

public static void main(String[] args)

{

int key=3;

Scanner input=new Scanner(System.in);

System.out.print("请输入要加密的字符串:");

String string=input.nextLine();

char[] str=new char[string.length()];

String jiami=" ";

for(int i=0;i<string.length();i++)

{

char s=string.charAt(i);

if(s>='x'&&s<='z')

{

s=(char) (s-26);

s=(char) (s+key);

}

else

{

s=(char) (s+key);

}

jiami=jiami+s;

}

System.out.println("加密后的字符串为:"+jiami);

}

}

String str=”abcd”

Length() 获取字串长度

用法:str.length()=4  获取字串长度(int类型)

charAt()、获取指定位置的字符

用法:

str.charAt(0)=”a”

str.charAt(1)=”b”

str.charAt(2)=”c”

str.charAt(3)=”d”

getChars()获取从指定位置起的子串复制到字符数组中(它有四个参数,在示例中有介绍)

用法:

//四个参数的含义

//1.被拷贝字符在字串中的起始位置

//2.被拷贝的最后一个字符在字串中的下标再加1

//3.目标字符数组

//4.拷贝的字符放在字符数组中的起始下标

public void getChars(int start,int end,char c[],int offset)

该方法的作用是将当前字符串从start到end-1位置上的字符复制到字符数组c中,并从c的offset处开始存放

eg:public class class6_2

{

public static void main(String args[])

{

String s=new String("巴西足球队击败德国足球队");

char[] c=new char[s.length()];

s.getChars(7,12,c,0);

System.out.println(c);

s.getChars(5,7,c,5);

System.out.println(c);

s.getChars(0,5,c,7);

System.out.println(c);

}

}

运行以后的结果为

德国足球队

德国足球队击败

德国最球队击败巴西足球队

replace()、子串替换

用法:

public class Test {

public static void main(String args[]) {

String Str = new String("hello");

System.out.print("返回值 :" );

System.out.println(Str.replace('o', 'T'));

System.out.print("返回值 :" );

System.out.println(Str.replace('l', 'D'));

}

}

返回值 :hellT

返回值 :heDD

toLowerCase()方法

一、说明:把输入字符串中的大写字母全部变成小写字符。
二、实例:
var str = “JavaScript”;
var newStr = str.toLowerCase();
注意:对中文没影响;
toUpperCase()方法

一、说明:把输入字符串中的小写字母全部变成大写字符。
二、实例:
var str = “JavaScript”;
var newStr = str.toUpperCase();
注意:对中文没影响

trim()去除头尾空格:

用法:

String s=" abc ";
String s2=s.trim();

s2="abc"

toCharArray()将字符串对象转换为字符数组

public class MyTest1

{

public static void main(String[] args) {
String str = "I am a String";
char arr[] = str.toCharArray();
for (int i = 0; i < arr.length; i++)
System.out.println("arr[" + i + "]=" + arr[i]);
}
}

String类的方法可以连续调用:

String str="abc";

String result=str.trim().toUpperCase().concat("defg");

请阅读JDK中String类上述方法的源码,模仿其编程方式,编写一个MyCounter类,它的方法也支持上述的“级联”调用特性,其调用示例为:

MyCounter counter1=new MyCounter(1);

MyCounter counter2=counter1.increase(100).decrease(2).increase(3);

package myCounter;

public class MyCounter

{

int counter=0;

public  MyCounter increase(int increase)

{

counter=counter+increase;

return this;

}

public MyCounter decrease(int decrease)

{

counter=counter-decrease;

return this;

}

public static void main(String[] args)

{

MyCounter counter1=new MyCounter();

MyCounter counter2=counter1.increase(100).decrease(2).increase(3);

System.out.println("结果为:"+counter2.counter);

}

}

转载于:https://www.cnblogs.com/cts1234/p/7743952.html

课堂作业04 2017.10.27相关推荐

  1. 2017.10.27涩会题大乱斗部分题解

    A P3741 honoka的键盘 和昨天的T1一样, 枚举改哪一个 1 #include<cstdio> 2 #include<cstring> 3 #include< ...

  2. 2017c 语言程序设计,C语言程序设计第一次作业(2017.10.10完成)

    Android Studio failed to open by giving error “Files Locked" 解决方案 windows 7 下的解决方案 导航至 android- ...

  3. 2017.10.27 sue的小球 失败总结

    这个题是论文题...说这个题之前先说一下关路灯 这两个题都有时间的限制,但都不能作为状态设计进去 关路灯那个题,由于要忽略时间的限制,所以对于一个区间省得最多,是不是就是最优解了呢 首先,就算你知道这 ...

  4. 北京化工大学数据结构2022/10/27作业 题解

    目录 问题 A: 二叉树的性质 问题 B: 二叉树的节点 问题 C: 满二叉树 问题 D: 完全二叉树的节点序号 -----------------------------------分割线----- ...

  5. 课堂作业-1成绩汇总

    课堂作业-1成绩汇总 学号 姓名 作业标题 作业地址 提交日期 分数 113120180135 周萌 第一次班级作业 https://www.cnblogs.com/AwakenZed/p/10535 ...

  6. 软件测试课堂作业+期末整理【超实用】

    疫情期间在家结课,所用教材(第一本),辅助自学教材(第二本,MOOC上武剑洁老师的配套教材). 虽说MOOC是国家精品课,但个人觉得"内容太少.太理论"了. 我们大学老师和MOOC ...

  7. Java课程课堂作业代码

    前言 本文章只是单纯记录课堂老师布置的课堂作业代码,题目都比较简单,所以没有写解题思路,相信大家都能理解,当然其中有的解法和代码不是最优的,当时只是为了完成题目,后来也懒得改了,如果有不恰当或者不正确 ...

  8. 杂记2017.10.16

    杂记2017.10.16 ---------------- 2017.4.11 1,pivot是UI的图形中心.0.5,0.5表示该UI的原点在其图形正中 0,0表示该UI的原点在其图形左上角. 2, ...

  9. latex 小于_一份菜鸡的Latex课堂作业works--(ii)

    开学了,每天的课堂作业接踵而来.这是一份包含插入代码块和图片的作业. 先来一波图 documentclass{article} usepackage[UTF8]{ctex} usepackage{fa ...

  10. 软件工程概论课堂作业3

    题目:返回一个整数数组中最大子数组的和 要求: 输入一个一维整形数组,数组里有正数也有负数. 一维数组首尾相接,象个一条首尾相接带子一样. 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个 ...

最新文章

  1. 英伟达再发边缘AI计算设备:仅信用卡大小,性能比TX2强15倍
  2. word2vect 输出是什么
  3. Windows如何查看端口占用
  4. Android界面编程--使用活动条(ActionBar)--通过ActionBar菜单改变TextView的字体和颜色...
  5. java 网络传输中发送byte[]和接收到的不一致_为什么JAVA对象需要实现序列化?
  6. Java讲课笔记25:缓冲流、字符流与转换流
  7. 软件架构(7)---软件架构设计-五视图方法论
  8. 计算机应用决策支持系统,计算机决策支持系统技术及应用研究
  9. AWT_addMouseListener鼠标监听事件(Java)
  10. python里split以制表符分隔_在python中拆分以制表符分隔的大文件
  11. linux 信号阻塞和信号未决
  12. 简述静态全局变量的概念 C++
  13. arm上移植iconv命令
  14. android系统控件大全,安卓系统控件大全
  15. ZIP爆破图片outguess隐写 —— 【WUST-CTF2020】Alison likes jojo
  16. 某三位数除以10余9、除以9余8、除以8余7
  17. PHP从基础到高级详细教程(完整版)
  18. 五险一金真的那么重要吗?为什么很多人宁愿做小时工不要五险一金?
  19. 今日头条视频Url嗅探
  20. Debian11安装搜狗输入法

热门文章

  1. cfda计算机管理化系统,计算机化系统清单
  2. c 如何调用c语言程序设计,c语言程序设计_函数调用c语言程序设计_函数调用.ppt...
  3. springboot mybatis 事务_真香——Github上的优秀SpringBoot框架
  4. datatable中某一列最小值_操作dom获取datatable中的某一行的某一列的数据
  5. 在unity中生成螺旋线的效果
  6. Json文件转Map(二)之解析节点
  7. 【渝粤教育】国家开放大学2018年春季 0284-21T外国文学 参考试题
  8. Soft Bellman Equation and Soft Value Iteration证明
  9. 经典机器学习系列(六)【集成学习】
  10. 推荐系统000111