Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.98/137: Рейтинг темы: голосов - 137, средняя оценка - 4.98
0 / 0 / 0
Регистрация: 30.09.2012
Сообщений: 25

Как передать переменную из одного метода в другой?

17.11.2012, 19:08. Показов 27476. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возник вопрос. Как передать переменную из одного метода в другой? У меня есть два метода. Нужно передать переменную String fileName из openFileToWrite() в wriiiiiter(). Как это сделать? String i = openFileToWrite.fileName не работает

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
42
43
44
45
import java.io.*;
public class Files
{
 public static PrintWriter openFileToWrite()
    {
        FileOutputStream outputStream;
        PrintWriter printWriter = null;
        String text;
        String fileName;
        
        System.out.println("Please write the file name to edit it:");
        fileName = Genio.getString();
        try{
            outputStream = new FileOutputStream(fileName);
            printWriter = new PrintWriter(outputStream);
            System.out.println("Please input the text that you want to edit to the text file:");
            text = Genio.getString();
            while (!text.equals(""))
            {
                printWriter.println(text);
                text = Genio.getString();
            }
            printWriter.close();
 
        }
        catch(IOException e)
        {
            System.out.println("Error when loading file");
        }
        return printWriter;
    }
    
    /**
     *Metod, that takes function of writing to file.
     *
     */
    public void wriiiiiter()
    {
      
          while (!fileName.equals(""))
         {
          PrintWriter printWriter = openFileToWrite();
         }
    }
}
Заранее спасибо за помощь.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.11.2012, 19:08
Ответы с готовыми решениями:

Как передать переменную из одного класса в другой?
Доброго времени суток. Говорю сразу, я новичек. Только начинаю свой тернистый путь. У меня возникла проблема, не могу понять как передать...

Как передать входящее значение одного метода класса на возврат в другой метод того же класса?
Я самый новейший новичок. Помогите.Как передать входящее значение (количество еды) метода feed класса Cat на возврат(return) в метод...

Как взять переменную из одного класса и переместить в другой без наследования?
class A { public static void main(String args) { int a,b,c; for(int k=0;k<array.length;k++){ ...

9
 Аватар для Drygba
512 / 454 / 119
Регистрация: 17.02.2012
Сообщений: 1,032
Записей в блоге: 1
17.11.2012, 19:59
почему бы не сделать переменную fileName глобальной в классе?
1
614 / 488 / 175
Регистрация: 02.03.2010
Сообщений: 1,238
17.11.2012, 22:39
оба метода находятся в одном классе, зачем передавать переменные друг другу, если оба метода будут иметь доступ к даже private полю класса.
Как предложили выше, делаем
Java
1
2
3
4
5
6
7
public class Files
{
private String fileName;
 public static PrintWriter openFileToWrite()
    {
.....
this.fileName = Genio.getString();
String fileName; в 10 строке убираем
0
0 / 0 / 0
Регистрация: 30.09.2012
Сообщений: 25
17.11.2012, 23:08  [ТС]
Спасибо, сделал глобальную переменную все пошло как надо
0
1 / 1 / 0
Регистрация: 13.05.2013
Сообщений: 59
17.05.2013, 14:11
А что такое Genio в "this.fileName = Genio.getString();" у меня просто похожая ситуация и мне нужно сделать чтобы значение одной переменной было доступно в любом участке кода.
0
18 / 18 / 2
Регистрация: 16.04.2013
Сообщений: 58
21.05.2013, 17:46
Цитата Сообщение от Lutik9465 Посмотреть сообщение
мне нужно сделать чтобы значение одной переменной было доступно в любом участке кода
Java
1
2
3
4
5
6
7
8
9
10
public class Globals {
public static final int ANSWER = 42;
public static String name = "Vasya Pupkin";
}
System.out.println(Globals.ANSWER); 
 
public interface GlobalsInterface {
String HELLO_STRING = "Hello World!";
}
System.out.println(GlobalsInterface.HELLO_STRING);
0
 Аватар для AckiyBolt
653 / 402 / 35
Регистрация: 19.02.2013
Сообщений: 1,072
Записей в блоге: 2
21.05.2013, 17:58
вот это правильно:
Java
1
2
3
public class Globals {
public static final int ANSWER = 42;
}

вот это нет:
Java
1
2
3
public class Globals {
public static String name = "Vasya Pupkin";
}
с модификатором final оно становится чем-то типа константы. т.е. переменную низя изменить

Java
1
2
3
public interface GlobalsInterface {
   String HELLO_STRING = "Hello World!";
}
по части функционала и принципа работы - полностью идентично правильному варианту. нельзя потому что интерфейсы служат не для этого и не должны использоватся как еонтейнеры статических данных
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
21.05.2013, 18:48
Цитата Сообщение от AckiyBolt Посмотреть сообщение
полностью идентично правильному варианту
сказал бы просто что в интерфейсе все вариэйблы автоматом public static final
0
18 / 18 / 2
Регистрация: 16.04.2013
Сообщений: 58
21.05.2013, 19:20
Цитата Сообщение от AckiyBolt Посмотреть сообщение
т.е. переменную низя изменить
А если очень хочется?) То нужно...
0
 Аватар для AckiyBolt
653 / 402 / 35
Регистрация: 19.02.2013
Сообщений: 1,072
Записей в блоге: 2
21.05.2013, 19:46
Цитата Сообщение от mutagen Посмотреть сообщение
сказал бы просто что в интерфейсе все вариэйблы автоматом public static final
так про это в книжках пишут


Цитата Сообщение от Madonion Посмотреть сообщение
А если очень хочется?) То нужно...
если очень хочется - есть рефлекшен, если очень нужно - есть ансейф
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.05.2013, 19:46
Помогаю со студенческими работами здесь

Как можно передать значения переменных из одного класса в другой?
1) Не могу понять, почему в Borland JBuilder создавая два Фрейма в разных классах при запуске я вижу только одно. package temp1; ...

Как передать рандомно заполненный массив из одного объекта в другой с возвратом его обратно?
Народ подскажите как передать рандомно заполненный массив из одного объекта в другой, при этом из 2-ого объекта массив уходит на сортировку...

Использование переменной из одного метода в другой
Здравствуйте! Я начал писать программу для изучения методов. Я столкнулся с такой проблемой: в другом методе пишет, что переменная 'z'...

Из одного массива скопировать переменную в другой массив
Суть задачи, есть класс B, в котором две переменные a и b, вот так это выглядит, class B { int a; float b; } В мэйне надо...

Передача двумерного массива из одного метода в другой метод
Привет Всем! Как тут принято писать: " Java начал изучать не так давно" :) Появился вопрос: как передать значения двумерного массива из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение/ Перевод https:/ / **********/ gallery/ thinkpad-x220-tablet-porn-gzoEAjs . . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru