Programiranje

Java-Pitanja i odgovori

dado2202 pon 27.8.2012 11:23
captain_soap_McTawish kaže...

Kao sto su ti vec rekli, ako hoces pisati nativne aplikacije, onda je najbolje uzeti javu.

 

Mozes i koristiti i c++ i to na vise nacina. Prvi nacin je da koristis andoriodov NDK framework. Tu mozes napraviti vrlo precizno napraviti aplikaciju, no development je tezi i sporiji spram koristenja jave. Ovaj nacin koristis tek kada te za pisanje odredene aplikacije ostali nacini budu ogranicavali.

 

C++-om mozes pisati i android aplikacije uz pomoc c++ buildera, koji ce u verziji xe3 donijeti mogucnost kreiranja android aplikacija pomocu njihova c++ frameworka.

 

Mozes i koristiti RadPHP, gdje pises web i mobilne aplikacije uz pomoc php-a.

Samo problem sa C++ i NDK ti je opet u tome da se i taj C++ kod opet izvršava unutar Dalvik-a, pa opet nije ništa brže nego da si išao pisati aplikaciju u Javi, a izgubiš opet više vremena na implementaciji u C++-u.

 

Uzmi Javu, odi na android developers, ima tamo dosta videa (google IO), tutoriala, svega i svačeg. Mislim da ti više od toga ne treba.

Milka30 sub 8.9.2012 21:53

E ovakva je stvar:

 

Pokusavam da gledam filmove online,no to mi ne polazi za rukom.

Mozilla me je upozorila da moram osvjeziti dodatke i jasno me upozori da je Java u pitanju.

No koliko god da puta skinem Javu,prilikom instalacije mi kaze da je Ta inacica vec azurirana.

Takoder ove dvije iste Jave koju mi Mozilla nudi-iste su tako da ne kontam zasto me linka na jednu te istu stvar?

 

Za posljedicu imam:film u 20% slucajeva pogledam prvih 5 min i onda mi stalno loadira iako je loading bar pun!

Ili mi se u 80% slucajeva Mozilla chrasha!

Sa Youtubeom nemam problema!

 

MirkoCapara čet 13.9.2012 00:10

Pocetnik sam u Javi, imam jedan problem. Prilikom pravljenja igrice Snake, ne znam kako i gdje da postavim Meni sa alatkama (File, Edit...), i da napravim da mi pokazuje Score u igrici.

 

Board.java

  1. /*
  2.  * To change this template, choose Tools | Templates
  3.  * and open the template in the editor.
  4.  */
  5. package snake;
  6. /**
  7.  *
  8.  * @author Capara
  9.  */
  10.    
  11.     
  12. import java.awt.Color;
  13. import java.awt.Font;
  14. import java.awt.FontMetrics;
  15. import java.awt.Graphics;
  16. import java.awt.Image;
  17. import java.awt.Toolkit;
  18. import javax.swing.JMenuBar;
  19. import javax.swing.*;
  20. import java.awt.event.*;
  21. public class Board extends JPanel implements ActionListener {
  22.     private final int WIDTH = 304;
  23.     private final int HEIGHT = 300;
  24.     private final int DOT_SIZE = 10;
  25.     private final int ALL_DOTS = 900;
  26.     private final int RAND_POS = 29;
  27.     private final int DELAY = 140;
  28.     private int score = 0;
  29.     private int x[] = new int[ALL_DOTS];
  30.     private int y[] = new int[ALL_DOTS];
  31.     private int dots;
  32.     private int apple_x;
  33.     private int apple_y;
  34.     private boolean left = false;
  35.     private boolean right = true;
  36.     private boolean up = false;
  37.     private boolean down = false;
  38.     private boolean inGame = true;
  39.     private Timer timer;
  40.     private Image ball;
  41.     private Image apple;
  42.     private Image head;
  43.    
  44.    
  45.  
  46.     public Board() {
  47.         addKeyListener(new TAdapter());
  48.         setBackground(Color.black);
  49.       
  50.        
  51.        
  52.        
  53.         ImageIcon iid = new ImageIcon(this.getClass().getResource("ball.png"));
  54.         ball = iid.getImage();
  55.         ImageIcon iia = new ImageIcon(this.getClass().getResource("Apple.png"));
  56.         apple = iia.getImage();
  57.         ImageIcon iih = new ImageIcon(this.getClass().getResource("Head.png"));
  58.         head = iih.getImage();
  59.        
  60.        
  61.       
  62.    
  63.         setFocusable(true);
  64.         initGame();
  65.     }
  66.    
  67.   
  68.     public void initGame() {
  69.         dots = 3;
  70.         for (int z = 0; z < dots; z++) {
  71.             x[z] = 50 - z*10;
  72.             y[z] = 50;
  73.         }
  74.         locateApple();
  75.         timer = new Timer(DELAY, this);
  76.         timer.start();
  77.        
  78.     }
  79.    
  80.    
  81.     public void paint(Graphics g) {
  82.         super.paint(g);
  83.         if (inGame) {
  84.             g.drawImage(apple, apple_x, apple_y, this);
  85.            
  86.            
  87.             for (int z = 0; z < dots; z++) {
  88.                 if (z == 0)
  89.                     g.drawImage(head, x[z], y[z], this);
  90.                 else g.drawImage(ball, x[z], y[z], this);
  91.             }
  92.             Toolkit.getDefaultToolkit().sync();
  93.             g.dispose();
  94.             score++;
  95.         } else {
  96.             gameOver(g);
  97.         }
  98.     }
  99.    
  100.    
  101.     public void gameOver(Graphics g) {
  102.         String msg = "Game Over";
  103.         Font small = new Font("Helvetica", Font.BOLD, 14);
  104.         FontMetrics metr = this.getFontMetrics(small);
  105.         g.setColor(Color.white);
  106.         g.setFont(small);
  107.         g.drawString(msg, (WIDTH - metr.stringWidth(msg)) / 2,
  108.                      HEIGHT / 2);
  109.     }
  110.     public void checkApple() {
  111.         if ((x[0] == apple_x) && (y[0] == apple_y)) {
  112.             dots++;
  113.             score++;
  114.             locateApple();
  115.         }
  116.     }
  117.     public void move() {
  118.         for (int z = dots; z > 0; z--) {
  119.             x[z] = x[(z - 1)];
  120.             y[z] = y[(z - 1)];
  121.         }
  122.         if (left) {
  123.             x[0] -= DOT_SIZE;
  124.         }
  125.         if (right) {
  126.             x[0] += DOT_SIZE;
  127.         }
  128.         if (up) {
  129.             y[0] -= DOT_SIZE;
  130.         }
  131.         if (down) {
  132.             y[0] += DOT_SIZE;
  133.         }
  134.     }
  135.     public void checkCollision() {
  136.           for (int z = dots; z > 0; z--) {
  137.               if ((z > 4) && (x[0] == x[z]) && (y[0] == y[z])) {
  138.                   inGame = false;
  139.               }
  140.           }
  141.         if (y[0] > HEIGHT) {
  142.             inGame = false;
  143.         }
  144.         if (y[0] < 0) {
  145.             inGame = false;
  146.         }
  147.         if (x[0] > WIDTH) {
  148.             inGame = false;
  149.         }
  150.         if (x[0] < 0) {
  151.             inGame = false;
  152.         }
  153.     }
  154.     public void locateApple() {
  155.         int r = (int) (Math.random() * RAND_POS);
  156.         apple_x = ((r * DOT_SIZE));
  157.         r = (int) (Math.random() * RAND_POS);
  158.         apple_y = ((r * DOT_SIZE));
  159.     }
  160.     public void actionPerformed(ActionEvent e) {
  161.         if (inGame) {
  162.             checkApple();
  163.             checkCollision();
  164.             move();
  165.         }
  166.         repaint();
  167.     }
  168.     private class TAdapter extends KeyAdapter {
  169.         @Override
  170.         public void keyPressed(KeyEvent e) {
  171.             int key = e.getKeyCode();
  172.             if ((key == KeyEvent.VK_LEFT) && (!right)) {
  173.                 left = true;
  174.                 up = false;
  175.                 down = false;
  176.             }
  177.             if ((key == KeyEvent.VK_RIGHT) && (!left)) {
  178.                 right = true;
  179.                 up = false;
  180.                 down = false;
  181.             }
  182.             if ((key == KeyEvent.VK_UP) && (!down)) {
  183.                 up = true;
  184.                 right = false;
  185.                 left = false;
  186.             }
  187.             if ((key == KeyEvent.VK_DOWN) && (!up)) {
  188.                 down = true;
  189.                 right = false;
  190.                 left = false;
  191.             }
  192.         }
  193.     }
  194. }


Snake.java

  1. /*
  2.  * To change this template, choose Tools | Templates
  3.  * and open the template in the editor.
  4.  */
  5. package snake;
  6. /**
  7.  *
  8.  * @author Capara
  9.  */
  10. import javax.swing.*;
  11. import java.lang.Object;
  12.  import java.awt.Component;
  13.   import java.awt.Container;
  14.     
  15. public class Snake extends JFrame {
  16.     public Snake() {
  17.         add(new Board());
  18.         Board app = new Board();
  19.        
  20.         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  21.         setSize(320, 340);
  22.         setLocationRelativeTo(null);
  23.         setTitle("Snake");
  24.       
  25.  
  26.  
  27.        
  28.         setResizable(false);
  29.         setVisible(true);
  30.     }
  31.    
  32.    
  33.   
  34.     public static void main(String[] args) {
  35.        
  36.         new Snake();
  37.        
  38.        
  39.        
  40.     }
  41. }
  • pa ako moze pomoc.
tatjana2312 čet 13.9.2012 12:34

Poz, nisam znala u koju temu da smjestim ovo. Čistila sam neke programe i vidjeh da imam Javu 6 i Javu 7 pa sam Javu 6 maknila. Sad nece da mi ucitava player-e na stranicama. Imam Flash player 11. Sto mi jos treba? Da vratim Javu 6?

Rodu sub 27.10.2012 09:32

Bog raja ,

 

Da li bi mi neko mogao pomoci da uradim jedan zadatak u javi. Ide ovako:

 

Treba izracunati kada unesem neki int broj sto je ustvari neka godina, da program izracuna kada se radi o prestupnoj godini.

To je prvi dio zadatka i taj sam uradila, ali poslije kada program provjeri da li je prestupna ili ne, treba dalje da izracuna slijedece tri prestupne.

Ako je zadana godina prestupna onda se i ona racuna u ove tri.

 

Npr.

 

unesena godina 2012

 

program izbaci " da to je prestupna"

 

i dalje treba da ispise

 

2012

2016

2020

 

 

Ps. taj dio je takode lagan ali ako je jedna od te 3 nije prestupna kao 1900 sto onda treba da radim?

 

Unaprijed hvala

 

 

 

anarky1988 ned 28.10.2012 12:48

Prijestupne godine su sve djeljive s 4, ako nisu djeljive sa 100, kojima se dodaju one koju su djeljive sa 400http://hr.wikipedia.org/wiki/Prijestupna_godina

 

int brojac=0;

while(brojac<3){

     if(  ((godina%4==0) &&  (godina%100!=0))  || (godina%400==0) ){

          System.out.println("Godina je prijestupna: "+godina);

          brojac++;

    }else {

        System.out.println("Godina nije prijestupna: "+godina);

    }

     godina++;

}

 

jel to to?

dado2202 pon 5.11.2012 14:35
Intelovac123 kaže...

Trebam pomoc.Imam ovaj program (.jar file) i trebam iz tog programa kad se extractuje da mi neko kaze na koji nacin su u programu prevodjene rijeci(Baza podataka i sl.)..

Pls postavi pitanje sa nekim konstrukcijama rečenice koji su razumljivi, možda dobiješ odgovor (pogledaj odgovor koji sam dao ispod, možda ti treba ista stvar).

KraljDrzislav kaže...

Pitanje, imam file .jar koji u sebi sastoji mnogo .class datoteka. Jel možda netko zna kako da jednostavno uredim, odnosno izbrišem 2 reda u jednoj .class datoteci ?

Bang, jedan, Bang bang, dva

 

Mora da vam izgleda ovaj odgovor kao znanstvena fantastika jer je to bilo ekstremno teško.

 

BTW. Nakon što "ispraviš" svoju "class"/java datoteku moraš opet compilirati source (java datoteku), dobiti van class datoteku i zamijeniti je sa onom koja je već u jar-u, samo pazi na verziju jave s kojom to radiš i još neke sitnice

 

BANG treći

Intelovac123 pon 5.11.2012 14:44

Evo ovako.

Imam taj jar file,i posto je u pitanju prevodilac sa latinskog na srpski trebam da mi neko kaze na koji nacin su u tom programu smjestene rijeci.

Ako program ima bazu podataka da mi kaze koji je fajl baza,a ako je na neki drugi nacin to uradjeno da pojasni.

Jel sad jasnije sta pitam?

Rodu sub 10.11.2012 00:04

Poz svima ,

 

Trebala bih malu pomoc iz jave....

 

Trebam da napisem program koji treba da izracuna medijan npr. medijan od 1,2,10,4 je 4 ili od 1,2,10 je 2. Dakle program mora da racuna medijan prva tri unesena broja, zatim drugog treceg i cetvrtog , pa onda treceg cetvrtog i petog itd. Znaci racuna uvijek zadnja tri broja i izbacuje rezultate kada se unese neki negativan broj.

 

Npr:

 

unos :

 

1.0 , 2.0,  10.0  ,  4.0 ,  5.0 , -4.0

 

rezultat:

 

2          

4

5

 

Napomena:

 

Ne smije se koristiti array.