java字符串的操作_Java对字符串进行的操作

本文详细介绍了Java中字符串和数组的各种操作,包括数组的倒序输出、查找字符串中重复字符、寻找没有重复字符的位置以及删除字符串中的重复元素。提供了多种实现方式,如使用for循环、StringBuffer和HashSet等。此外,还涉及Java字符串的基本操作,如比较、子串查找等。这些内容对于理解和掌握Java编程中的字符串和数组处理非常有帮助。
摘要由CSDN通过智能技术生成

本篇总结归纳对字符串或数组进行相关操作问题

数组倒序输出

查找字符串中第一次重复的字符

查找字符串中第一次没有重复的字符

删除字符串中重复的元素

倒序输出问题

第一种:对于数组

public int[] ArrayReverse(int[] a){

int len = a.length;

int[] b = new int[len-1]; //新建数组用于保存倒序后的数组

for(int i=len-1;i>=0;i--){

b[len-1-i] = a[i];

}

return b;

}

第二种:对于字符串我们可以把它转化成字符数组,在采用for循环来做,或者将字符串转换成StringBuffer,利用StringBuffer的reverse方法

//for循环输出

public String ArrayReverse(String s){

char[] c = s.toCharArray();

for(int i = c.length-1; i>=0; i++){

String rev += c[i];

}

return rev;

}

//StringBuffer操作

public String ArrayReverse(String s){

StringBuffer sb = new StringBuffer(s);

sb.revese();

String newS = sb.toString();

return newS;

}

查找字符串中第一次重复的字符

//查找字符串中第一次重复的字符

public int FindFirstDupChar(String str) {

int i;

for (i = 0; i < str.length(); i++) {

if( str.indexOf(str.charAt(i), i+1) != -1) {

return i;

}

}

if (i == str.length()) {

return -1;

}

return i; //返回第一次重复的字符位置

}

查找字符串中第一次没有重复的字符

public int FindFirstSingleChar(String str){

int i;

for(i = 0; i

char c = str.charAt(i);

if(str.indexOf(c)==str.lastIndexOf(c)){ //判断是否有重复,返回重复位置

return i;

}

}

if (i == str.length()) { //没有返回-1

return -1;

}

return i;

}

删除字符串中重复的元素

第一种:通过list集合的contains方法

//删除字符串中重复的元素

public String deleteDupChar(String str){

List list = new ArrayList();

char[] c = str.toCharArray();

for(int i = 0; i

if(!list.contains(c[i])){ //如果不存在的话添加到集合中

list.add(c[i]);

}

}

String s = list.toString();

return s;

}

第二种:利用Set集合中不能添加重复元素的特性

public String deleteDupChar(String str){

char[] c = str.toCharArray();

Set s = new HashSet();

for(int i = 0;i

s.add(c[i])

}

return s.toString();

}

java常见字符串的操作

/** * java常见字符串的操作 */ public class Test7 { public static void main(String args[]){ StringBuffer sBuf ...

使用javap分析Java的字符串操作

我们看这样一行简单的字符串赋值操作的Java代码. String a = "i042416"; 使用命令行将包含了这行代码的Java类反编译查看其字节码: javap -v con ...

四&colon;Java之字符串操作String、StringBuffer和StringBuilder

string是我们经经常使用到的一个类型,事实上有时候认为敲代码就是在重复的操作字符串,这是C的特点,在java中.jdk非常好的封装了关于字符串的操作.三个类String .StringBuffer ...

JAVA作业—字符串操作

------------恢复内容开始------------ ------------恢复内容开始------------ ------------恢复内容开始------------ ------- ...

Java的字符串操作

目录 Java的字符串操作 一.不同字符串操作的对比 1.1 C++中const修饰指针 const在星号的左边,是被指向的常量不可变 const在星号的右边,是指针的指向不可变 二. Java字符串 ...

Java String 字符串操作小结

// 转载加编辑 -- 21 Apr 2014 1. Java字符串中子串的查找 Java中字符串中子串的查找共有四种方法,如下: 1.int indexOf(String str) :返回第一次出现 ...

JAVA中字符串常见操作

String str1="hello,world";String str2="Hello,World"; 1.字符串的比较:例,System.out.print ...

Java实现 LeetCode 583 两个字符串的删除操作(求最长公共子序列问题)

583. 两个字符串的删除操作 给定两个单词 word1 和 word2,找到使得 word1 和 word2 相同所需的最小步数,每步可以删除任意一个字符串中的一个字符. 示例: 输入: &quot ...

Java Calendar 类的时间操作

Java Calendar 类的时间操作 标签: javaCalendar时间Date 2013-07-30 17:53 140401人阅读 评论(7) 收藏 举报 分类: 所有(165) Java ...

随机推荐

Shell 编程基础之 For 练习

一.语法 for var in con1 con2 con3 ... do # 执行内容 done for var in {min..max} do # 执行内容 done for (( 初始值; 限 ...

Android的消息处理机制Looper&comma;Handler&comma;Message

android的消息处理有三个核心类:Looper,Handler和Message.其实还有一个Message Queue(消息队列),但是MQ被封装到Looper里面了,我们不会直接与MQ打交道,因 ...

struts2标签获取parameter&comma;request&comma;session&comma;application中的值

http://localhost:8080/demo/index.jsp?flag=kkkk

INNO&amp&semi;&amp&semi;DELPHI

好久不弄delphi了,再次见到inno,居然不知所措~ 让人亲切的 var,又见到了.而如今,到处可见. 整目录复制 Flags: igNoreversion recursesubdirs crea ...

grep -P的一个小问题

用grep时,发现一个怪异的问题. 背景:grep -E表示用扩展的正则表达式.grep -P 表示用perl正则表达式,区别:http://www.cnblogs.com/wangkangluo1/ ...

codevs 1078 最小生成树

题目描述 Description 农民约翰被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的农场.当然,他需要你的帮助. 约翰已经给他的农场安排了一条高速的网络线路,他想把这 ...

几个检查当前运行的LINUX是在VM还是在实体机中的方法

昨天提到了VM中的逃逸问题,要想逃逸,首先要检测当前操作系统是否为VM,下面提供几个LINUX下的检查方法: 第一,首推facter virtual ,权限为普通用户,约定,普通用户命令提示符用$表示 ...

js实现浏览器添加收藏功能

今天搞项目的时候为了实现浏览者实现添加收藏的功能,特地了解了一下相关的API. 也看到了网上各种版本的代码.整理了一下,代码如下.简单易懂.

Cytoscape源码下载地址和编译办法

开发环境:Windows2008 R2 64位+Jdk1.7+Maven3.2.3 前提条件:安装好JDK1.7到C:\Program Files\Java\jdk1.7.0_67,下载好Maven并 ...

关于C语言中输出格式

刷OJ题的时候,经常发现题目的输入输出会有相应的特殊要求,像位宽和位域输出就比较常见. 位宽:如果长度不足位宽大小,则默认情况下前面补空格. 标志位:有+有- 默认格式为左对齐. 在位宽前面加0,补全 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值