一道JAVA笔试题求解答,关于选字符串的?

");}}import java.awt.*;import javax.swing.*;public class test {public static void main(String args[]){String str = "abaaccddkkdjfjj";char []arr = new char[26];int []num = new int[26];for(int i = 0;i
一道JAVA笔试题求解答,关于选字符串的?
这题好,看你对string掌握得扎实不,如果扎实,很容易

public class Test10097 {
public static void main(String args[]) {

String str = "abaaccddkkdjfjj";

String uniqueCarc = getFirstUniqueCharactre(str);

System.out.println(uniqueCarc);
}

private static String getFirstUniqueCharactre(String str) {
for(int i = 0; i < str.length(); i++){
int firstIndex = str.indexOf(str.charAt(i));
int lastIndex = str.lastIndexOf(str.charAt(i));

if(firstIndex == lastIndex){
return String.valueOf(str.charAt(i));
}
}

return null;
}
}

-----------
b2011-03-02
import java.io.*;

public class StringTest {
//only for test, do nothing to the Exception
public static void main(String[] args)throws Exception {
System.out.print("please input a string:");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = null;
str = br.readLine();
char ch = '\u0000';

//int len = str.length();
for(int i=0; i<str.length(); i++)
{
ch = str.charAt(0);
str = str.substring(1);
if(str.indexOf(ch) == -1)
{
System.out.println("you want " + ch);
break;
}
}
}
}2011-03-02
就写个主要方法,其他自己补全哦

public static void find(String str)
{
char ch = 'a';
int index = 0;
int[] a = new int[N];

for(int i=0; i<a.length; i++)
a[i] = 0;

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

index = 25 - 'z' + ch;

a[index]++;
}

int min = Integer.MAX_VALUE;
for(int i=0; i<a.length; i++)
{
if(a[i] == 1)
{
ch = letters.charAt(i);
index = str.indexOf(ch);

if(index < min)
min = index;
}
}

if(min < Integer.MAX_VALUE)
{
System.out.println(str.charAt(min));
}
else
{
System.out.println("字符串中没有唯一不同的字符!");
}
}2011-03-02
import java.awt.*;
import javax.swing.*;

public class test {
public static void main(String args[]){
String str = "abaaccddkkdjfjj";
char []arr = new char[26];
int []num = new int[26];

for(int i = 0;i<26;i++){
num[i] = 0;
}
int total = 1;
arr[0] = str.charAt(0);
num[0] = 1;
for(int i = 1;i<str.length();i++){
boolean b = false;
for(int j = 0;j<total;j++){
if(str.charAt(i)==arr[j]){
num[j]++;
b = true;
break;
}
}
if(b == false){
arr[total]=str.charAt(i);
num[total]=1;
total++;
}
}
for(int i = 0 ;i<total;i++){
if(num[i]==1){
System.out.print(arr[i]);
break;
}
}
}
}
思路:创建两个数据,一个是char型的,一个是int型的。然后把字符串分解,读取每一个字母,如果当前字母以前出现过,查出是第几个出现的,并对应出现次数加1。如果没出现,则在char数组中加上一个新的元素,出现次数为1。读完整个字符串后,对int数据进行检索,第一个出现1对应在arr数据中的字母为最早出现且只出现一次。2011-03-02
flyingFish211的方法很好!哈哈!!2011-03-02
使用String类的contains(),replaceFirst()等方法
import java.util.Scanner; //从键盘输入

public class StringTest1 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

Scanner sc = new Scanner(System.in) ;
String str = sc.nextLine() ;

int j = 0 ;

while(j < str.length()) {
char ch = str.charAt(j) ;
String s = String.valueOf(ch) ;
String str1 = str.replaceFirst(s, "") ;
if(str1.contains(s)) {
//System.out.println(s) ;
j++ ;
System.out.println(j) ;
}else {
char nCh = ch ;
System.out.println(nCh) ;
break ;

}

}
}

}2012-06-13
mengvlog 阅读 9 次 更新于 2025-06-20 00:58:45 我来答关注问题0
  • b 使用String类的contains(),replaceFirst()等方法import java.util.Scanner; //从键盘输入public class StringTest1 {/param args/public static void main(String[] args) {// TODO Auto-generated method stubScanner sc = new Scanner(System.in) ;String str = sc.nextLine() ;int j = 0...

  • Integer count = (Integer) request.getAttribute("count");A 设置request的属性count为一个Integer,第二句从request中取出这个Integer不能直接转成IntegerA)不能编译通过Integer count = request.getAttribute("count"); //从请求中取出变量的count值。但是不能直接从object转成 integer应该是:A,已经经...

  •  d3y3q3 java问题,求各路高手齐来踊跃解答。。。我想知道正确答案啊

    答案:JavaSE\JavaME\JavaEE 2、在Java中如何定义变量名?变量的作用是什么?答案:path:\Java路径 3、定义变量分哪两个步骤?是否必须在Java程序的前面声明变量?答案:自己看书去,这是书上原话,字太多了,所以我就不打了 4、以下程序段的输出结果为___。for(i=0;i

  •  holmes1214 java选择题,求java高手解答,必采纳,闲人勿扰,最好能有解释。

    1,C,2,AB,3,AB,4,ABCD,5,AB,6,错7,对8,对9,对10,对11,对12,对C, AB, AB, ABCD, CD,错对对错对对对c ab ab abcd d true true true, false, true, true, true

  •  JoJn007 java初学者题目,求详细解答

    ");}}在B.java 的文件中:A{public int v = 100;}public B{public static void main(String[] args){int temp = new A().v;Scanner scan = new Scanner(system.in);while(true){int v = scan.nextInt();if(v>temp){System.ou.println("输入值大了");continue;}else if(v

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部