问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java 输入字符串判断问题求解

发布网友 发布时间:2022-06-01 18:04

我来回答

2个回答

热心网友 时间:2023-10-10 14:41

思路:创建6个List,分别存放P A T e s t ;把字符串里的所有 P 放到P的List集合里,其他字母也分别放到相应的集合里,存好后可写个递归,或者循环开始组装字符串,每次从对应的集合里取出一个对象时,就删掉一个,但所有集合size为0时表示终结,循环结束,最终得到字符串

import java.util.ArrayList;
import java.util.List;

public class TestOther {


public static void main(String[] args) throws Exception {
String text = "redlesPayBestPATTopTeePHPereatitAPPT";
String PATest = getPATest(text);
System.out.println(PATest);
}

public static String getPATest(String text){
StringBuffer result = new StringBuffer();
List<String> P = findString(text, "P");
List<String> A = findString(text, "A");
List<String> T = findString(text, "T");
List<String> e = findString(text, "e");
List<String> s = findString(text, "s");
List<String> t = findString(text, "t");
while(P.size() > 0 || A.size() > 0 || T.size() > 0 || e.size() > 0 || s.size() > 0 || t.size() > 0){
buildPATest(P, A, T, e, s, t, result);
}
return result.toString();
}

public static List<String> findString(String text, String find){
List<String> list = new ArrayList<String>();
if(text != null && !"".equals(text.trim())){
int index = -1;
while((index = text.indexOf(find, index)) != -1 && index < text.length()){
index++;
list.add(find);
}
}
return list;
}

private static void buildPATest(List<String> P, List<String> A, List<String> T, List<String> e, List<String> s, List<String> t, StringBuffer result) {
if(P.size() > 0){
result.append(P.get(0));
P.remove(P.size()-1);
}
if(A.size() > 0){
result.append(A.get(0));
A.remove(A.size()-1);
}
if(T.size() > 0){
result.append(T.get(0));
T.remove(T.size()-1);
}
if(e.size() > 0){
result.append(e.get(0));
e.remove(e.size()-1);
}
if(s.size() > 0){
result.append(s.get(0));
s.remove(s.size()-1);
}
if(t.size() > 0){
result.append(t.get(0));
t.remove(t.size()-1);
}
}


}

热心网友 时间:2023-10-10 14:42

没看明白你的需求、
JAVA字符串判断出错,求解

public boolean panduan(){ if(user==getuser()&amp;&amp;pass==getpass())return true;else return false;} 你的这句话有问题,你比较的时候需要传个admin对象进来,你这里的getuser()永远返回“admin”,你应该这样写 public boolean panduan(admin a){ if(user.equals(a.getuser())&amp;&amp;pass.equals(a....

java键盘上输入一串字符串,判断字母a是否存在?

1楼正解 public static void main(String[] args) { System.out.println("请输入任意字符串!");Scanner input = new Scanner(System.in);String str = input.nextLine();if(str.contains("a")){ System.out.println("您输入的字符串【 " + str + " 】中,包含了字符串【 a 】");}el...

java连续输入三个字符串,判断首字母是否大小写

java连续输入三个字符串,判断首字母是否大小写方法:1、使用ASCII码的大小进行比较,java中char字符和ASCII码有对应值,即char字符可以通过ASCII转换为数字,就可以进行比较。ASCII码中65为A,90为Z。2、使用包装类,先将字符串循环拆分为char的单个字符,使用包装类Character的方法。

java输入一个string的字符串,判断他与另一个string[]数组中有否开头部分...

public class Test { public static void main(String[]args){ String temp = "aa";String[] strs = new String[]{"a","aa","cc"};for(int i = 0;i&lt;strs.length; i++){ if(strs[i].startsWith(temp)){ System.out.println(strs[i]);} } } } ...

java怎么判断输入的字符串是数字或“*”符号?长度为4位

用正则啊,字符串的判读,拆分,匹配都常常使用,Stirng类中match()方法就可以了 比如:“StirngXxxx”.match("\\d{4}");j就可以判读是不是数字了。自己学学正则语言吧,在字符串操作很有用的哦~~~对呀,很有用的 用[0-9*]{0,4}试一试 ...

编写java程序:输入一个字符串,判断有几个英文字母,有几个数字,有几个...

public static void main(String args[]){ String str1="abfdTE1879!!";//可以从控制台输入 String str2=str1.replaceAll("[a-z|A-Z]","");System.out.println("英文字符的个数为"+(str1.length()-str2.length()));str1=str2;str2=str1.replaceAll("[0-9]","");System.out....

java中如何判断输入的字符串是否与一个固定字符串相等

字符串比较 使用.equals();String s1 = "aaa"; //输入字符串 String s2 = "bbb"; //固定字符串 System.out.println(s1.equals(s2));字符串比较不要使用 == 因为使用== 比较的两个字符串的引用是否相等 你可以理解为比较两个字符串在内存中的地址是否相等。

在Java中,输入一个字符串,再输入一个字符,判断该字符在该字符串中出现...

import java.util.Scanner;public class Substring {public void Sub(){int times=0;String zfc=new Scanner(System.in).next();String zf=new Scanner(System.in).next();for(int i=0;i&lt;zfc.length()-1;i++){String sub=zfc.substring(i, i+1);if(sub.equals(zf)){times++;}}System...

java 编程从屏幕输入8-10位字符串,判断是否为日期

public static void main(String[] args) { String checkValue = "2000/03/31"; checkValue = checkValue.replaceAll("/", "")+"000000";String year = checkValue.substring(0, 4); // 获取年份String month = checkValue.substring(4, 6); // 获取月份 Boolean isLeap = ...

JAVA编程:输一个字符串,再输入一个字符,判断该字符在该字符串中出现的...

import java.util.*;public class TestZiFu { public static void main(String[] args) { Scanner scan = new Scanner(System.in);ZiFu zf = new ZiFu();System.out.println("请输入一个字符串:");String zi = scan.next();System.out.println("请输入要查找的字符:");String find = ...

java输入一个字符串 java中怎么输入一个字符串 java中如何输入字符串 java让用户输入一个字符串 java键盘输入字符串 java输出字符串 java怎么输入字符数组 java如何输入一个字符 java字符输入
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...9300的手机,拍照的时候因为屏幕很大自拍的时候按不到开关~前面的... 帮我的作文取个好题目 我的作文是仿写《生命 生命》这篇文章的。_百度... 40 多亿美金BD背后的超前押注者 40 多亿美金BD背后的超前押注者 ...中间有条金色拉链,上面是稍微肥点的怎么搭配外套和里衣 仿照课文生命 生命写一篇作文 要写3件事,380字左右. 如何在微信上面创建一个微信号? 东安黑豹股份有限公司公司简介 2022励志句子精选10句 自信的生命最美丽 梦幻模拟战手游兰迪乌斯转职攻略:兰迪乌斯转职选择推荐 C++如何测定一个程序的运行时间(毫秒) 湖北有pat考试考点吗 NVIDIA控制面板在哪里,桌面右键没有,控制面板也没用。急!!! 我是NVIDIA独立显卡的,重装了系统后桌面右键没有NVIDIA显卡控制面板,控制面板里也没有,求高手!!! (9的n次方)的2次方=3的20次方,求n是多少 为啥我在桌面右键单击出不来nvidia控制面板 1+3+3的2此方+3的3次方+……+3的20次方等于多少 比较2的30次方与3的20次方的大小~~~ 已知3的1次方等于3,3的2次方等于9,3的3次方等于27…请你推测3的20次方的个位数是多少?3 求3的20次方 模23的最小正剩余? 2的30次方与3的20次方谁大 急想知道3开20次方是多少? 3开20次方是否等于3的20分之1次方呢? 3∧20次方的后两位数 以邓紫棋的实力,她有没有可能成为像王菲那样的天后? 邓紫棋真的是颜值和实力都非常高的吗? 3的20次方是多少和4×10的5次方为什么是同类项? 3的20次方的个位数是几 邓紫棋被称为”巨肺小天后“,实力有多强? 3的20次方怎么算,求过算法 3的20次方要怎么算。要过程谢谢了。 电脑蓝屏--高手帮忙!!!谢谢 C++ 为什么我的clock()函数没有输出,只有自己的函数输出 电脑在工作中无规律地蓝屏死机是什么原因 ★李白的山水诗有哪些 一运行跑跑卡丁车就蓝屏,附蓝屏文字! 李白写山水的诗 知道PowerShadow影子系统的进来一下! 玩WAR3为什么会蓝屏 李白有哪些山水诗? 运行冒险岛就蓝屏,附蓝屏文字! 李白经典的山水诗句有哪些? 李白山水风光诗 李白写的山水诗,四首 性格直率坦荡,嗲声嗲气、撒娇成性哪样的女人最招男人疼 李白有多少首山水诗 李白的山水诗有哪些 怪我话少 不善言辞 傲娇成性?什么意思? 李白的山水诗 李白写的山水诗 我撒谎成性怎么办?