Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Ошибка преобразования в строку при компиляции / 8 сообщений из 8, страница 1 из 1
25.04.2013, 22:34:37
    #38240748
vlandv89
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка преобразования в строку при компиляции
Привожу часть программы, вызывающую ошибку компиляции, причину которой найти не могу

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
	public static class Reduce extends MapReduceBase implements
			Reducer<Text, Text, Text, Text> {

		public void reduce(Text key, Iterator<Text> value,
				OutputCollector<Text, Text> output, Reporter reporter)
				throws IOException {
			int countofparams=0; 
			

			FileInputStream fstream1 = new FileInputStream(
					"/export/hadoop-1.0.1/bin/countofparams.txt");
			DataInputStream input1 = new DataInputStream(fstream1);
			BufferedReader br1 = new BufferedReader(new InputStreamReader(input1));
			String result1=br1.readLine();
			countofparams=Integer.parseInt(result1);
			input1.close();
			fstream1.close();
			
			

			String line = key.toString();
			ArrayList<String> ProcessedTherms = new ArrayList<String>();
			StringTokenizer tokenizerforprocessedterms = new StringTokenizer(line, "\n");
			while (tokenizerforprocessedterms.hasMoreTokens()) {
				ProcessedTherms.add(tokenizerforprocessedterms.nextToken());
			}
			
			

			ArrayList<String> CountOfThermsAndIds = new ArrayList<String>(); 
			ArrayList<Integer> CountOfTherms = new ArrayList<Integer>();
			ArrayList<Integer> Ids = new ArrayList<Integer>();
			while (value.hasNext())
			{
				String valueline=value.next().get().toString();
				StringTokenizer tokenizer = new StringTokenizer(valueline, " ");
				while (tokenizer.hasMoreTokens()) 
				{
					CountOfThermsAndIds.add(tokenizer.nextToken());
				}				
			}


В результате компиляции получаю ошибку

Код: java
1.
2.
3.
4.
5.
	/partrain/src/ParallelTraining.java:252: error: cannot find symbol
					String valueline=value.next().get().toString();
							             ^
	  symbol:   method get()
	  location: class Text



Помогите уcтранить ошибку.
...
Рейтинг: 0 / 0
25.04.2013, 22:46:49
    #38240756
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка преобразования в строку при компиляции
vlandv89,
у вас компилятор к форуму подключен чтоли?
...
Рейтинг: 0 / 0
25.04.2013, 23:09:58
    #38240778
забыл ник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка преобразования в строку при компиляции
javapeckervlandv89,
у вас компилятор к форуму подключен чтоли?
Все проще, кто-то изобрел компилятор на основе ИИ. Сырая версия, когда не может скомпилировать, лезет на форумы..
...
Рейтинг: 0 / 0
25.04.2013, 23:50:32
    #38240805
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка преобразования в строку при компиляции
vlandv89,

Код: java
1.
String valueline=value.next().toString(); //String valueline=value.next().get().toString();
...
Рейтинг: 0 / 0
26.04.2013, 00:39:32
    #38240827
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка преобразования в строку при компиляции
забыл ник,
главное что работает)
...
Рейтинг: 0 / 0
26.04.2013, 01:03:38
    #38240837
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка преобразования в строку при компиляции
И ведь что характерно, я в одном из топиков дал автору рекомендации по-поводу hadoop, но воз и ныне там. Такое ощущение, что вопросы действительно задаёт компилятор.

vlandv89,

Можете расписать решаемую вами задачу? Уже прямо любопытно стало.
...
Рейтинг: 0 / 0
26.04.2013, 17:25:35
    #38241964
vlandv89
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка преобразования в строку при компиляции
Usman,

на http://developer.yahoo.com/hadoop/tutorial/module4.html

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
  public static class Reduce extends MapReduceBase
    implements Reducer<Text, IntWritable, Text, IntWritable> {

    public void reduce(Text key, Iterator<IntWritable> values,
                       OutputCollector<Text, IntWritable> output,
                       Reporter reporter) throws IOException {
      int sum = 0;
      while (values.hasNext()) {
        sum += values.next().get();
      }
      output.collect(key, new IntWritable(sum));
    }
  }


а то решение, которое вы привели, будет соответствовать моей цели (оно конечно устранила ошибку, но не повлияло ли это на работспособность), а именно в моей программе будет после этого изменения последовательно записывать в строковую переменную значение из Iterator<Text>value ?
...
Рейтинг: 0 / 0
26.04.2013, 19:51:07
    #38242149
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка преобразования в строку при компиляции
vlandv89не повлияло ли это на работспособностьНет, не повлияет. В примере из tutorial'а используется класс IntWritable , у которого действительно имеется метод http://hadoop.apache.org/docs/current/api/org/apache/hadoop/io/IntWritable.html#get()] get() .
Но в классе Text для получения значения в строковом виде используется метод http://hadoop.apache.org/docs/current/api/org/apache/hadoop/io/Text.html#toString()] toString() .vlandv89будет после этого изменения последовательно записывать в строковую переменную значение из Iterator<Text>value ?Конечно будет записывать ;)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Ошибка преобразования в строку при компиляции / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]