Java中Hashtable代替C#中Dictionary的用法

来源:百度知道 编辑:UC知道 时间:2024/06/22 11:01:54
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
A a = new A();
a.Test("11133");
Console.Read();
}
}
class A
{
public void Test(string s)
{
string st = "";
int count = 0;
string st1="";
Dictionary<string, int> table = new Dictionary<string, int>();

table.Add(s.Substring(0,1),1);
for (int i = 1; i < s.Length; i++)
{
st = s.Substring(i, 1);
if (table.ContainsKey(st))
{
table[st] = table[st] + 1;

}

个人感觉Hashtable是不适合做这个的,键值对和你的需求是不相符合的,给你个java求这个问题的代码··个人感觉比较简单
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class Test2 {

public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("输入要输入的字符串");
String tagit1 = br.readLine();
String tagit = tagit1.toLowerCase();//大小写都是一个认识为同一字符
int temp=0,posit=0;
int letter[] = new int[26];

for (int i = 0; i < tagit.length(); i++) {
char a = tagit.charAt(i);

letter[a - 97]++;
}

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

if(letter[i]>temp)
{
temp=letter[i];
posit=i;
}
}