Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> переделать в строку, sin строку 
V
    Опции темы
Anime
Дата 11.5.2007, 03:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 88
Регистрация: 13.11.2006
Где: Киев

Репутация: нет
Всего: нет



вот типа sin немогу переделать в строку 
делаю так
Код

//some code...
    static double sin(double sn) {
        return sn;
        }
    public String toString() {
        String s=Integer.toString(this.sin(double sn));
        System.out.println(s);
        return s;
    }
//some code...

как ток не пробывал ( на что мазгов хватало) smile)
нефига неполучается видимо чет незнаю help!

Добавлено через 12 минут и 43 секунды
Аа блин заработало вроде как smile нао было так делать
Код

    public String toString1() {
        double db = this.sin(50);
        String s=Double.toString(db);
        System.out.println(s);
        return s;
    }

Но блин что то не то
sin уже должно стоять какоето число мне так ненадо Например я в текстовое поле хочу ввести число а мне он чтоб вывул в string как сделать
PM   Вверх
Anime
Дата 11.5.2007, 03:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 88
Регистрация: 13.11.2006
Где: Киев

Репутация: нет
Всего: нет



я плачу блин... ваще чума нафиг сохдал тему нашел как замутить 
Код

import java.lang.*;

public class Dialog2 {
    
    static double sin(double dd) {
        return dd;
        }
    
    public String toString1(double dd) {
        double db = this.sin(dd);
        String s=Double.toString(db);
        System.out.println(s);
        return s;
    }

    public static void main(String[] args) {
        Dialog2 dgl2 = new Dialog2();
        dgl2.toString1(6544);
    }
    
}

хотя может и лечше сдлать мона (как то более красивше ) выслушаю все хотя и время уже [censored 6] упс я пошел спать smile
PM   Вверх
nornad
Дата 11.5.2007, 07:12 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 16
Всего: 31



А не проще ли сделать сразу так:
Код

System.out.println( 6544 );

И будет тебе счастье. smile 
Твой пример до этого прекрасно упрощается.  smile

Добавлено через 1 минуту и 48 секунд
Кстати, скажи честно - ты индус? smile 
Судя по этому
Код

static double sin(double dd) {
  return dd;
}

адназначна индус.  smile 


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
valery1707
Дата 11.5.2007, 08:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 11.5.2007
Где: Караганда

Репутация: 1
Всего: 1



Предполагая что функция sin все-таки соответствует названию и возвращает синус от числа в double, более правильно и соответственно поставленной задаче (сконвертить double в строку) было бы сделать так:
Код

  String strValue = new Double(sin(50)).toString();

Полученное значение можно напрямую вывести в консоль:
Код

  System.out.println(strValue);

Если нужно число просто вывести в консоль то можно не приводить double к Double, а сделать сразу так:
Код

  System.out.println(sin(50));

Прошу уважаемого nornad не обижаться, но для теста функция sin была у меня определена вот так (ну не нашел я в java синуса smile ):
Код

  public static double sin(double value) {
    return value;
  }

Ну а static что s, можно было ее использовать напрямую из "public static void main(String[] args)" smile

Это сообщение отредактировал(а) valery1707 - 11.5.2007, 08:08
PM MAIL ICQ Skype GTalk   Вверх
nornad
Дата 11.5.2007, 08:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 16
Всего: 31



Цитата(valery1707 @  11.5.2007,  11:03 Найти цитируемый пост)
ну не нашел я в java синуса

Код

Math.sin( double );



--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
skyboy
Дата 11.5.2007, 08:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 1
Всего: 260



Цитата(valery1707 @  11.5.2007,  07:03 Найти цитируемый пост)
ну не нашел я в java синуса

у меня IDE NetBeans; математика находится в классе Math. Не знаю, что у тебя используется(и от чего зависит наличие тех или иных классов... от версии SDK?)

Добавлено через 2 минуты и 16 секунд
Цитата(skyboy @  11.5.2007,  07:46 Найти цитируемый пост)
SDK

JDK smile
PM MAIL   Вверх
nornad
Дата 11.5.2007, 09:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 16
Всего: 31



Хм... Почему-то мне кажется, что синус в математическом пакете прописался уже так давно, что сейчас вряд ли кто-то найдёт JDK без него.  smile 


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
valery1707
Дата 11.5.2007, 09:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 11.5.2007
Где: Караганда

Репутация: 1
Всего: 1



Прошу у всех прощеня за не знание класса Math smile
Искал отдельный класс в пакете java.math и естественно не нашел.
Теперь буду знать smile
Спасибо.
PM MAIL ICQ Skype GTalk   Вверх
_Y_
Дата 11.5.2007, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1651
Регистрация: 27.11.2006

Репутация: 5
Всего: 34



Цитата(nornad @ 11.5.2007,  07:12)
Кстати, скажи честно - ты индус? smile 
Судя по этому
Код

static double sin(double dd) {
  return dd;
}

адназначна индус.  smile

Я тоже сначала долго смеялся. А попом подумал, что такой метод может и пользу приносить. В случае если он пререписывает метод интерфейса или абстрактного класса.

Это сообщение отредактировал(а) _Y_ - 11.5.2007, 10:10


--------------------
Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:)
PM MAIL WWW   Вверх
chief39
Дата 11.5.2007, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 15
Всего: 77



Цитата(_Y_ @  11.5.2007,  10:10 Найти цитируемый пост)
Я тоже сначала долго смеялся. А попом подумал, что такой метод может и пользу приносить. В случае если он пререписывает метод интерфейса или абстрактного класса.

А чё тут такого?
Просто заглушка.
Посмотрите примеры Кента Бека до рефакторинга.(я о TDD)
Я и сам так часто пишу, когда каркас набрасываю. Правда, добавляю рядом 
Цитата

//TODO
 smile


Воообще:
Код

double xx = 0.56;        
System.out.println(" sin(0.56)= " + Math.sin(xx) );


систем аут автоматически преобразовывает примитивы к стрингу, а у остальных классов "зовёт" toString()




--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
Anime
Дата 11.5.2007, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 88
Регистрация: 13.11.2006
Где: Киев

Репутация: нет
Всего: нет



Цитата(nornad @  11.5.2007,  07:12 Найти цитируемый пост)
А не проще ли сделать сразу так:код Java1:System.out.println( 6544 );highlightSyntax('java_Y2YxM2','java');highlightSyntax('java_Y2YxM2','java');И будет тебе счастье.  Твой пример до этого прекрасно упрощается.  

ну тогда так
Код

System.out.println( 6544.0 );


а если вот так написать
Код

import java.lang.*;

public class Dialog2 {

    public static void main(String[] args) {
        System.out.println(sin(4));

    }
    
}

то пишет метод ненайден.
добавляем это
Код

static double sin(double dd) {
  return dd;

}

все нормально Почему индус как сделать подругому
Если так напишу
Код

import java.lang.*;

public class Dialog4 {

    public static void main(String[] args) {
        String strValue = new Double(sin(50.0)).toString();
        System.out.println(strValue);
    }

}

метод син ненайден
без этого
Код

static double sin(double dd) {
  return dd;

}

Как ещё блин написать мона?
PM   Вверх
magicfly
Дата 11.5.2007, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 21.2.2007

Репутация: нет
Всего: 1



Цитата

Если так напишу
Выделить всёкод Java
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
    
import java.lang.*;
public class Dialog4 {
    public static void main(String[] args) {
        String strValue = new Double(sin(50.0)).toString();
        System.out.println(strValue);
    }
}

метод син ненайден
без этого



import сделай и будет тебе счастье
PM MAIL   Вверх
stup
Дата 11.5.2007, 17:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 17.4.2007

Репутация: нет
Всего: 1



Видимо, пишет "метод не найден", потому что его нет   smile 
PM MAIL   Вверх
chief39
Дата 11.5.2007, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 15
Всего: 77



Цитата(magicfly @  11.5.2007,  17:40 Найти цитируемый пост)
Цитата

Если так напишу
Выделить всёкод Java
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
    
import java.lang.*;
public class Dialog4 {
    public static void main(String[] args) {
        String strValue = new Double(sin(50.0)).toString();
        System.out.println(strValue);
    }
}

метод син ненайден
без этого



import сделай и будет тебе счастье 


import java.lang делать не надо - оно импортнуто по дефолту.

Метод sin не найден потому что в джаве ВСЁ - классы и объекты.
Метод син вызывается на Math-е, который доступен отовсюду.




--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
Anime
Дата 12.5.2007, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 88
Регистрация: 13.11.2006
Где: Киев

Репутация: нет
Всего: нет



Цитата

import java.lang делать не надо - оно импортнуто по дефолту.

эт понил
Цитата

Метод sin не найден потому что в джаве ВСЁ - классы и объекты.

эт знаю
Цитата

Метод син вызывается на Math-е, который доступен отовсюду.

Вот здесь он находиться
Код

import java.lang.math;

Я вот тока непойму

Цитата(_Y_ @  11.5.2007,  10:10 Найти цитируемый пост)

Цитата(nornad @ 11.5.2007,  07:12)
Кстати, скажи честно - ты индус?  Судя по этомукод
Код

static double sin(double dd) {  return dd;}

адназначна индус. 
Я тоже сначала долго смеялся. А попом подумал, что такой метод может и пользу приносить. В случае если он пререписывает метод интерфейса или абстрактного класса.Это сообщение отредактировал(а) _Y_ - 11.5.2007,  10:10

Что я нетак написал?!
Вроде как метод замутил ну чтоб син видел или нет

Это сообщение отредактировал(а) Anime - 12.5.2007, 14:01
PM   Вверх
chief39
Дата 12.5.2007, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 15
Всего: 77



Цитата(Anime @  12.5.2007,  13:57 Найти цитируемый пост)
Выделить всёкод Java
1:
    
import java.lang.math;

Я вот тока непойму


Тогда уже import java.lang.Math;
Регистр в джаве имеет значение, классы пишутся с большой буквы, а Math - это именно класс со статик методом sin( и не только).


Цитата(Anime @  12.5.2007,  13:57 Найти цитируемый пост)
Что я нетак написал?!
Вроде как метод замутил ну чтоб син видел или нет

Метод, по идее, должен принимать аргумент и отдавать его синус, прально?
Прально. Только метод именно с такой функциональностью уже реализован в Math.
То что ты пытался сделать - это дополнительная обёртка, которая, в принципе, не нужна.
То есть, так можно наворотить десяток методов, которые будут вызывать низлежащий и отдавая ему параметр, будут получать его синус.
Это как передать бумажку сотруднику, который рядом - вместо этого ты просишь сотрудника А передать её сотруднику Б, тот - сотруднику В, а он уже - конечному получателю. Каждый из них просто передаёт бумажку, но реально три сотрудника делают бесполезную работу и затрудняют её.
А так как у тебя метод просто принял значение и отдал его неизменённым - то смысл его теряется вообще.

Вот найди тут логику:

Код

public int get255(){

   int x = MyConstants.value255; // это некий твой сторонний класс с константой value255, которая содержит значение 255
   int y = 0;
   int z = 0;
   int k = 0;
   int m = 0;

   y=x;
   z=y;
   k=z;
   m=k;

   return m;
}


Все созданные переменные ничего полезного не делают. И логично сделать всё вот так:
Код

public int get255(){
   int x = MyConstants.value255;
   return x;
}


и даже вот так:
Код

public int get255(){
   return MyConstants.value255;   
}


А ещё правильнее - вообще не создавать это метод, а там, где ты его собирался вызывать, вместо вызова
Код

myObj.get255();


написать сразу
Код

MyConstants.value255;


Вот поэтому индусов и вспомнили smile

Например, индусский код(примерно, сам ход мысли):

Код

public boolean isTrue(boolean param){

   String str = Boolean.toString(param);
   if(str.length() == 4){
      return true;
   }else{
      return false;
   }
}

Вместо
Код

public boolean isTrue(boolean param){
   return param;
}

или просто обращения к этой переменной(которую передаём параметром) в том месте, где вызываем этот бесполезный метод



--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
Anime
Дата 13.5.2007, 01:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 88
Регистрация: 13.11.2006
Где: Киев

Репутация: нет
Всего: нет



Вот код. он выдает мне син числа, как double.
Код

public class Dialog2 {
    
    static double sin(double dd) {
        return dd;
        }

    public static void main(String[] args) {
        System.out.println(sin(4344));
    }
    
}


Вот код. он мне выдает син, как стринг
Код

public class Dialog2 {
    
    static double sin(double dd) {
        return dd;
        }
    
    public String toString1(double da) {
        String s = new Double(sin(da)).toString();
        return s;
    }

    public static void main(String[] args) {
        Dialog2 dgl2 = new Dialog2();
        System.out.println(dgl2.toString1(4344));
    }
    
}


Разве мона неписать вот это: 
Код

    static double sin(double dd) {
        return dd;
        }

А что тогда? Как подругому?

Добавлено через 10 минут и 13 секунд
Я сделал это!!! я понил Урааа! поламал свою башню тупую  smile  smile  smile  smile 
Код

public class Dialog2 {
    
    public String toString1(double da) {
        String s = new Double(Math.sin(da)).toString();
        return s;
    }
    public static void main(String[] args) {
        Dialog2 dgl2 = new Dialog2();
        System.out.println(dgl2.toString1(4322));
    }
    
}

Так намного лучше? Или ещё мона сделать круче smile ?

Это сообщение отредактировал(а) Anime - 13.5.2007, 01:23
PM   Вверх
chief39
Дата 13.5.2007, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 15
Всего: 77



Цитата(Anime @  13.5.2007,  01:20 Найти цитируемый пост)
Так намного лучше? Или ещё мона сделать круче smile ?

Эт оне круто - это правильно:

Цитата(chief39 @  11.5.2007,  12:16 Найти цитируемый пост)
Воообще:
Выделить всёкод Java
1:
2:
    
double xx = 0.56;        
System.out.println(" sin(0.56)= " + Math.sin(xx) );



Если тебе нужен отдельный метод всё-таки:

public double MySinWrapper(double param){
   double res = Math.sin(param);
   System.out.println(" sin(" + param + ")= " + res );
   return res;
}

Хотя зачем отдельный метод - непонятно ни разу smile Разве что потренироваться "вот именно так" smile



--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1671 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.