本文主要介绍了变量交换、String类初始化、字符串的基本操作。变量交换详解介绍了两个变量是如何交换的,通过例子理解这个用法。

一、交换变量

1.什么是交换变量
例如用户输入a、b的值分别3,9的整数,要求输出的值为a=9,b=3。如何交换这两个变量呢?使用三变量法,这种方法用现实生活的举个例子,假设有一瓶酱油和一瓶醋,还有一个空瓶子,这个空瓶子就是用来交换。先把一瓶酱油倒进空瓶子中,然后再把一瓶醋倒入原来装酱油的瓶子,最后把倒进空瓶子的酱油倒入原来装醋瓶子,这就实现了交换变量。
2.交换变量的例子:

import java.util.Scanner;
public class p41 {
public static void main(String[] args) { // TODO Auto-generated method stub Scanner scan=new Scanner(System.in);//接收用户输入的对象scan int a = scan.nextInt();//int类型变量a来接受用户的输入 int b = scan.nextInt();//int类型变量b来接受用户的输入 System.out.println("交换前的值"+"a="+a+",b="+b);//打印用户输入的a和b的值 swap(a,b);//调用swap()方法
}
//定义交换值的swap()方法
public static void swap(int a,int b){ int temp=a;//定义个中间变量temp a=b; b=temp; System.out.println("交换后的值"+"a="+a+",b="+b); }
}

运行的结果是:

从上面代码中,我们可以看到创建了Scanner类对象scan,这个对象是接受用户的输入的对象。定义int类型变量a和b来接受用户的输入的值,定义了一个swap()方法,在方法中定义了一个int类型变量temp,当作成一个中间变量,temp=9,a=30,b=9,实现了变量的交换。

二、String类初始化

1.在我们开发中经常会用字符串,字符串就是一连串的字符,它是由多个字符组成的,例如:“animal”由多个英文字母组成所有组成的单词。字符串可以包含任意的字符,这些字符串需要用一对双引号。在Java中提供了String类和StringBuffer类封装字符串,也提供一些操作字符串的方法。

2.String类进行初始化有两种方式

第一种是用字符串常量直接初始化一个String对象

String s=”hello world”;

第二种用构造方法初始化字符串对象

String()构造方法:初始化一个新的String对象,使其包含一个空字符串。
String(char[ ] value )构造方法:分配一个新的String对象,使它包含字符数组参数中的字符序列。
String(String value )构造方法:初始化一个新的String对象,使其包含和参数字符串相同的字符序列。
3.String构造方法例子:

public class p42 {
public static void main(String[] args) { // TODO Auto-generated method stub String s1=new String();//创建空的字符串 String s2=new String("hello world!");//创建字符串内容为hello world! char[] c=new char[]{'A','B','C','D'};//创建字符数组的字符串 String s3=new String(c); System.out.println("Java进阶"+s1+"学习交流"); System.out.println(s2); System.out.println(s3); }
}

运行结果是:

三、字符串基本操作

1.在开发中,我们需要对字符串进行一些操作,例如获取字符串的长度。String类提供了一些方法,有以下这些方法:

int length()方法:获取字符串的长度,例如”abc”字符串的长度为3。

int indexOf(String str):返回的是str在字符串中第一次出现的位置。

int indexOf(int ch,int fromIndex):从fromIndex指定位置开始,获取ch在字符串中出现的位置。

int lastIndexOf(int ch):返回的是指定字符最后一次出现在指定字符串中的索引位置。

char charAt(int index):返回的是字符串中index位置上的字符,它的取值范围是0~(字符长度-1)。

2.字符串获取例子

public class p43 {
public static void main(String[] args) { // TODO Auto-generated method stub String str="hello world!";//声明字符串 System.out.println("字符串的长度为:"+str.length());//获取字符串的长度 System.out.println("字符串的第三个字符:"+str.charAt(2)); System.out.println("字符o第一次出现的位置:"+str.indexOf('o')); System.out.println("从第3个位置查找字符 o,第一次出现的位置 ::"+str.indexOf('o',3)); System.out.println("字符l最后一次出现的位置:"+str.lastIndexOf('l')); }
}

运行的结果是:

四、总结

本文主要介绍了变量交换、String类初始化、字符串的基本操作。

变量交换详解介绍了两个变量是如何交换的,通过例子理解这个用法。

String类初始化的方式有两种,一种是字符串常量直接初始化一个String对象,另一种是用构造方法初始化字符串对象。

字符串基本操作获取字符串的长度、指定的字符串中第一次出现的位置等。

我是Java进阶者,希望大家通过本文的学习,对你有所帮助!

交换变量和String类初始化:JAVA入门基础相关推荐

  1. **JAVA入门基础2**(系列更新)———JAVA 基础变量

    **JAVA入门基础2**(系列更新)---JAVA 基础变量 Java基础 1.注释 2.标识符和关键字 2.1 标识符 2.2 关键字(keyword) 3.数据类型 3.1 基本数据类型 3.2 ...

  2. Java入门基础及面试100题--初入门

    Java入门基础及面试100题 注:适合应届毕业生或java初入门者 1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: - 抽象:抽象是将一类对象的共同特征总结出来构造类的过程, ...

  3. java入门基础(四)

    文章目录 (一)对象和类 封装概述: (二)String对象 (三)StringBuilder对象 (四)集合ArrayList:可变的存储模型 练习 ArryayList练习 (一)对象和类 类:类 ...

  4. Java入门基础知识点整理大放送,推荐保存

    为了方便大家学习Java,理顺Java技术知识点,也可以助您尽快的努力成长起来,小编整理了以下Java入门基础知识,一起来学习吧! 一.概述 1991年Sun公司的James Gosling等人开始开 ...

  5. java入门基础重要知识必考考点

    java入门基础重要知识 一. Java概述 二. Java语言基础 1. 标识符的命名规则: 2. 关键字 3. 基本数据类型(基本.引用) 4. 基本数据类型转换 5. 定义变量的语法: 6. 运 ...

  6. JAVA入门基础6**(系列更新)———面向对象(二)的继承,抽象,接口

    **JAVA入门基础6**(系列更新)---面向对象(二)的继承,抽象,接口 面向对象2 大致总结 继承 @Override super();的应用 调用顺序 构造顺序 多态 什么是多态??? 多态有 ...

  7. java入门基础学习(三)

    文章目录 (一)有返回值的方法 (二)方法重载 习题 (一)有返回值的方法 格式:public static 返回值数据类型 方法名(参数){方法体return 数据;} 注意:1.返回值数据类型非v ...

  8. java入门基础教程(纯干货知识点+视频资源)

    本套Java视频教程是黑马程序员冯老师精心录制的Java基础班视频,该视频专门针对零基础的学员录制,授课讲究通俗易懂.干货.通过该套Java视频教程的学习,相信你能够轻轻松松地入门java语言. 完整 ...

  9. Java入门基础教程第一篇

    Java入门基础 Java是是一门面向对象编程语言,现在广泛使用,名声和c/c++.python一样,虽然我最常用的语言是python,但现在现在闲来无事,就写了这篇文章. 目录 Java入门基础 下 ...

最新文章

  1. 07-Windows Server 2012 R2 会话远程桌面-标准部署-RD授权
  2. 可心耳语-属于网络工程师的人声电台(第一期)
  3. iphone备忘录突然没了_iphone备忘录突然没了?丢失的备忘录内容怎么找回?
  4. nutch开发(二)
  5. mysql5.1编译安装centos7_02: mysql 5.7 编译安装 (centos7)
  6. 怎么修改远程服务器的地址,怎么修改远程服务器的地址
  7. mysql 登录的权限设置_MySQL 登录权限设置SQL语句
  8. BAT警示:没试过这个方法就别说会数据分析!!
  9. java读取合并单元格_Java POI常用方法,读取单元格的值,设置单元格格式,合并单元格,获取已合并的单元格,导出至本地等...
  10. Python Parse JSON –转储,加载
  11. python和matlab的区别_我为什么选择Python,不是Matlab和R语言呢?
  12. java 异常抛出_Java 如何抛出异常、自定义异常、手动或主动抛出异常
  13. 中国铁路车次编号规则
  14. diskgenius分区linux选哪项,DiskGenius和和傲梅分区助手哪个好 无损C盘扩容选谁
  15. 高级火山图 突出显示自定义的基因volcanic volcano plot duqiang 差异基因火山图
  16. 金融行业网络安全等级保护测评指南
  17. java 使用poi导出excel柱状图
  18. android分享微信获取资源失败怎么办,android 调用系统分享微信失败:获取资源失败...
  19. 3.3 String(字符串)
  20. R的内存管理和垃圾清理

热门文章

  1. 延迟开学会影响毕业?这些高校有答案了!
  2. 神经网络七十年:回顾与展望
  3. 16年前卖猪肉的北大高材生如今怎么样了?
  4. 漫画:什么是快速排序?(完整版)
  5. MySQL数据库中as和distinct关键字
  6. Ubuntu16.04默认安装了Python2.7和3.5 升级python3.5为3.6
  7. 约瑟夫死亡游戏算法问题
  8. 计算机视觉系统中图像究竟经历了哪些“折磨”
  9. 栈与队列7——单调栈结构(进阶问题)
  10. 使用idea 时出现classnotfound