abcbcajava的简单介绍
今天给各位分享abcbcajava的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java三线程顺序输出ABC CBA BAC
- 2、(java)输入两个字符串做比较,如果长度相等并且出现的字母相同,则认为两个字符串相等,例如:abc 和 bca
- 3、在java中怎样判断字符串abc和cba是相同?源码 谢谢
- 4、java输入一个字符串,使用递归输出所有可能的排列,如输入abc,输出abc,acb,bac,bca,cab,cba。
java三线程顺序输出ABC CBA BAC
public class ThreadTest{
public static void main(String[] args) {
String[] prints={"ABC","CAB","BCA"};
Thread thread;
for (int i = 0; i 3; i++) {
thread=new Thread(new MyRunable(i+1, prints[i]));
thread.start();
}
}
static class MyRunable implements Runnable{
private String str;
private int index;
public MyRunable(Integer index,String str) {
// TODO Auto-generated constructor stub
this.str=str;
this.index=index;
}
@Override
public void run() {
// TODO Auto-generated method stub
System.out.println("Thread "+index+" start-------------"+str);
}
}
}
(java)输入两个字符串做比较,如果长度相等并且出现的字母相同,则认为两个字符串相等,例如:abc 和 bca
算法:
if(s1.length()!=s2.length()) //长度不等,则s1!=s2。
return false;
else
{
for(i=0;is1.length();i++)
{
//将s1中的字母逐个取出,数出每个字母的出现次数。用数组NumOfChar_s1[]存放
switch(s1.charAt(i))
{
case a:
case A: NumOfChar_s1[i]++; break;
.
.
.
case z:
case Z: NumOfChar_s1[i]++; break;
}
//将s2中的字母逐个取出,数出每个字母的出现次数。用数组NumOfChar_s2[]存放
switch(s2.charAt(i))
{
case a:
case A: NumOfChar_s2[i]++; break;
.
.
.
case z:
case Z: NumOfChar_s2[i]++; break;
}
}
//逐一比较NumOfChar_s1[]和NumOfChar_s2[]中的每个元素,如果有一个不等,则s1!=s2。
for(i=0;is1.length();i++)
{
if(NumofChar_s1[i]!=NumofChar[i])
return false;
}
return true;
}
在java中怎样判断字符串abc和cba是相同?源码 谢谢
//是判断包含的字符相同吗
//如果不是包含关系,那么这种判断其实还是非常简单的
public static void main(String[] args){
String s1 = "abc";
String s2 = "cba";
boolean flag = true;//设计一个bool变量,当两字符串中存在不同的字符时标记为false
if(s1.length()==s2.length()){
for(char c : s1.toCharArray()){
if(s2.indexOf(String.valueOf(c))==-1){
flag = false;
}
}
}else{
flag=false;
}
if(flag){
System.out.println(s1+"与"+s2+"相等.");
}else{
System.out.println(s1+"与"+s2+"不相等.");
}
}
======================打印结果
abc与cba相等.
abc与cbw不相等.
java输入一个字符串,使用递归输出所有可能的排列,如输入abc,输出abc,acb,bac,bca,cab,cba。
递归就是自己调用自己,每次变换传递的参数:
1、定义方法possibleStrings,传入组合数的长度为3,字符为输入的a,b,c:
public static void possibleStrings(int maxLength, char[] alphabet, String curr) {
// 如果递归到最大长度,则打印
if(curr.length() == maxLength) {
System.out.println(curr);
// 否则继续递归,从输入的字母中一次添加,构成新的组合后输出
} else {
for(int i = 0; i alphabet.length; i++) { //for循环从0到最大长度
String oldCurr = curr;//保存当前的组合字符串
curr += alphabet[i]; //继续追加
possibleStrings(maxLength,alphabet,curr);//递归:重新计算是否达到最大长度,如果达到就打印出来。
curr = oldCurr;// 保存旧值到当前字符串中
}
}
}
2、调用测试:
public static void main(String[] args) {
// 模拟输入的字母,这里假设a、b、c
char[] alphabet = new char[] {'a','b','c'};
// 找出所有的abc的排列组合
StringExcersise.possibleStrings(3, alphabet,"");
}
关于abcbcajava和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-03,除非注明,否则均为
原创文章,转载请注明出处。